现有南方人类SouthPerson和北方人类NorthPerson,它们有共同的属性:姓名、年龄;他们有共同的行为:吃饭(南方人吃米、北方人吃馒头)。
- 创建人抽象类Person,Person类中存在抽象方法eat方法
- 正确创建南方人类SouthPerson和北方人类NorthPerson
- 要求对SouthPerson类和NorthPerson类进行合理封装,即提供有参构造方法、重写toString方法
- 让SouthPerson类和NorthPerson类继承Person抽象类,并重写eat方法
- 在测试类中实例化1个SouthPerson对象,1个NorthPerson对象(使用多态形式)
- 测试类中创建一个Person数组,将上述2个对象存入数组中
- 遍历Person数组(使用for循环或增强型for循环),将不同人吃的东西输出到控制台
package A2;
public class SouthPerson extends Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "SouthPerson{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
@Override
public void eat() {
System.out.println("南方人吃米");
}
}
package A2;
public class Test {
public static void main(String[] args) {
Person p1 = new NorthPerson();
Person p2 = new SouthPerson();
Person[] nums = new Person[2];
nums[0] = p1;
nums[1] = p2;
for (int i = 0; i < nums.length; i++) {
nums[i].eat();
}
}
}
文章介绍了如何在Java中创建一个抽象类Person,以及如何继承并重写其方法。通过SouthPerson和NorthPerson子类,展示了封装、构造方法、toString方法和多态的应用,测试类中实例化对象并存储在Person数组中,通过多态调用eat方法输出食物差异。

203

被折叠的 条评论
为什么被折叠?



