类主要结构图
- 抽象类:Poultry(家禽作为父类)
- 子类:Chook(鸡类)、Duck(鸭子类)
- 测试类:PoultryTest
类的方法图
代码示例
/**
* 测试类
*/
public class PoultryTest {
public static void main(String[] args) {
Chook chook = new Chook("喔喔", "芦花鸡", "虫子");
chook.show();// 显示鸡的自白
chook.cry();// 鸣叫的方法
Duck duck = new Duck("嘎嘎", "斑嘴鸭", "小鱼虾");
duck.show();// 显示鸭的自白
duck.swim();// 游泳的方法
}
}
/**
* 鸭类继承于家禽类
*/
class Duck extends Poultry {
public Duck() { }
public Duck(String name, String type, String food) {
super(name, type, food);
}
/** 实现父类提供的抽象方法(显示家禽的自白) */
@Override
public void show() {
System.out.println("我叫" + getName() + ",是一只" + getType() + "!\n我喜欢吃" + getFood());
}
/** 游泳的方法 */
public void swim() {
System.out.println("我会游泳!");
}
}
/**
* 鸡类继承于家禽类
*/
class Chook extends Poultry {
public Chook() { }
public Chook(String name, String type, String food) {
super(name, type, food);
}
/** 实现父类提供的抽象方法(显示家禽的自白) */
@Override
public void show() {
System.out.println("我叫" + getName() + ",是一只" + getType() + "!\n我喜欢吃" + getFood());
}
/** 鸣叫的方法 */
public void cry() {
System.out.println("我会打鸣!");
}
}
/**
* 家禽类(抽象类)
*/
abstract class Poultry {
private String name;// 家禽名字
private String type;// 家禽类型
private String food;// 家禽爱吃的食物
public Poultry() { }
public Poultry(String name, String type, String food) {
this.name = name;
this.type = type;
this.food = food;
}
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getType() { return type; }
public void setType(String type) { this.type = type; }
public String getFood() { return food; }
public void setFood(String food) { this.food = food; }
/** 显示家禽的自白(父类的抽象方法) */
public abstract void show();
}
运行截图