【发布时间】:2011-03-18 06:59:14
【问题描述】:
我有一个大学管理门户。我必须创建以下类来描述模型。
class Address
{
String street;
String city;
}
class Contact
{
String phone;
String mobile;
}
abstract class Person
{
String name;
String age;
Address address;
Contact contact;
}
class Student extends Person
{
String course;
String stream;
String rollno;
}
class Faculty extends Person
{
String department;
String faculty id;
}
现在我应该使用 getter-setter 方法进行实例初始化还是构造函数?
Person 类中的聚合呢??
构造函数应该如何在那里工作??
【问题讨论】:
-
构造函数不是setter的替代品..
-
实际上我不希望用户知道我在 Person 类中使用了 Contact 和 address 类。我只是让他们直接使用学生和教师课程。那么我的 Student 类的构造函数应该是什么形式?我想我必须创建一个参数化的构造函数,它将有 9 个参数。[3 个学生类属性,2 个人员类属性,2 个联系人类道具和 2 个地址类道具]。我说的对吗?
-
正如你提到的你不希望你的用户知道你的类的结构,你可以有一个工厂来创建任何人,你将所有信息作为参数传递,然后构造所需的对象来构建人目的。但是我不明白你为什么不希望用户知道联系人和地址对象。
-
其实我很好奇这会如何解决!!
标签: java model-view-controller model core