10.28 类成员与实例成员实验 模拟一个家族成员的姓氏,姓名有两部分构成:姓氏和名字。 1,编写一个FamilyPerson类,该类有一个静态的String型成员变量surname,用于存储姓氏
时间: 2024-11-04 11:13:39 浏览: 0
10.28.zip 字符串,创建一个整数列表,
在进行"10.28 类成员与实例成员实验"时,你想要创建一个名为FamilyPerson的类,它代表家庭成员,并且包含两个部分的名称:一个静态的字符串成员变量`surname`,用于存储姓氏,以及一个或多个实例变量来存储个体的名字。以下是这个类的一个简单设计:
```java
public class FamilyPerson {
// 静态成员变量(共享给所有FamilyPerson实例)
private static String surname;
// 实例成员变量(每个实例独立拥有)
private String firstName;
private String lastName;
// 构造函数,可以初始化姓名
public FamilyPerson(String surname, String firstName, String lastName) {
FamilyPerson.surname = surname; // 设置姓氏
this.firstName = firstName; // 设置名的第一个字
this.lastName = lastName; // 设置名的第二个字
}
// 获取姓氏
public static String getSurname() {
return surname;
}
// 获取个人姓名(完整形式)
public String getFullName() {
return surname + " " + firstName + " " + lastName;
}
// 设置个人姓名(仅限于实例内部)
public void setFirstName(String firstName) {
this.firstName = firstName;
}
// ... 其他类似的方法
// 主要示例
public static void main(String[] args) {
FamilyPerson person1 = new FamilyPerson("Li", "Wei", "Ming");
System.out.println(FamilyPerson.getSurname()); // 输出 "Li"
System.out.println(person1.getFullName()); // 输出 "Li Wei Ming"
}
}
```
在这个例子中,`surname`作为静态成员可以在类的任何时候通过类名直接访问,而`firstName`和`lastName`作为实例成员则随每个`FamilyPerson`对象的不同而变化。
阅读全文