Java、设计父类和子类。 自行设计一父类。多个子类扩展该父类,父类有私有的域和方法、子类覆盖父类的方法, 代码有差异性。同时子类中设计各自独有的方法设计protected的域和方法,在子类中访问。子
时间: 2024-10-11 07:03:06 浏览: 32
PHP父类调用子类方法的代码例子
Java中的类继承是一种创建新类的方式,它允许子类(也称为派生类或衍生体)从已存在的父类(也称为超类或基类)继承属性和行为。在设计过程中,首先我们创建一个父类,通常包含一些通用的属性(域,也称为成员变量)和方法,这些都是公共部分,所有子类都能访问。
例如,我们可以设计一个`Animal`父类:
```java
public class Animal {
private String name; // 私有域,防止直接访问
public Animal(String name) {
this.name = name;
}
// 公共方法
public void eat() {
System.out.println(name + " is eating.");
}
protected void sleep() { // 保护级方法,子类可以访问
System.out.println(name + " is sleeping.");
}
}
```
然后我们可以有两个子类,如`Dog`和`Cat`,它们分别从`Animal`派生并覆盖或扩展父类的行为:
```java
public class Dog extends Animal {
// 子类特有的域和方法
private int age;
public Dog(String name, int age) {
super(name); // 调用父类构造函数
this.age = age;
}
@Override
public void eat() {
System.out.println(name + " is happily eating.");
}
// 狗特有的行为
public void bark() {
System.out.println(name + " is barking.");
}
}
public class Cat extends Animal {
// 猫特有的域和方法
private boolean isGrumpy;
public Cat(String name, boolean isGrumpy) {
super(name);
this.isGrumpy = isGrumpy;
}
@Override
public void sleep() {
if (isGrumpy) {
System.out.println(name + " sleeps grumpily.");
} else {
System.out.println(name + " sleeps peacefully.");
}
}
// 猫特有的行为
public void purr() {
System.out.println(name + " is purring.");
}
}
```
阅读全文