1,设计Fish,Bird类都继承抽象类Animal类,实现抽象方法info并输出信息
2,让子类继承父类,并实现子类特有的属性和方法
package com.bdqn.demo;
abstract class Animal{//抽象类
private String name;//名字
private int age;//年龄
public abstract void info();//抽象方法
public Animal(String name, int age) {
this.age=age;
this.name=name;
}
public String getName() {//获取名字
return name;
}
public int getAge() {//获取年龄
return age;
}
}
class Bird extends Animal{//继承抽象类
private String color;//颜色
public Bird(String name,int age,String color) {
super(name,age);
this.color=color;
}
public String getBird() {//获取颜色
return color;
}
public void info() {//输出方法
System.out.println("我是一只"+getBird()+"的"+getName()+"!");
System.out.println("今年"+getAge()+"岁了!");
}
}
class Fish extends Animal{//继承抽象类
private int weight;//体重
public Fish(String name,int age,int weight) {//传递参数
super(name,age);
this.weight=weight;
}
public int getWeight() {//获取变量
return weight;
}
public void setWeight(int weight) {
this.weight = weight;
}
public void info() {//输出方法
System.out.println("我是一只"+getWeight()+"斤重的"+getName()+"!");
System.out.println("今年"+getAge()+"岁了!");
}
}
public class AnimalTest {//测试类
public static void main(String[] args) {
Bird b=new Bird("鸟",4,"红色");//创建对象
b.info();//输出方法
Fish f=new Fish("鱼",2,5);
f.info();
}
}
2,让子类继承父类,并实现子类特有的属性和方法
package com.baqn.demo;
abstract class Animal{//父类
private String name;//名字
private String type;//种类
public abstract void info();
public Animal( String name,String type) {
this.name=name;
this.type=type;
}
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;
}
}
class Chick extends Animal{//子类
public Chick(String name,String type) {//传递参数
super(name,type);
}
public void info() {
System.out.println("我叫"+getName()+"是一只"+getType()+"!");//调用属性
}
public void eat() {
System.out.println("我喜欢吃虫子!");
}
public void play() {
System.out.println("我会打鸣!");
}
}
class Duck extends Animal{//子类
public Duck(String name,String type) {//传递参数
super(name,type);
}
public void info() {
System.out.println("我叫"+getName()+",是一只"+getType()+"!");//调用属性
}
public void eat() {//吃方法
System.out.println("我喜欢吃小鱼虾!");
}
public void play() {//技能方法
System.out.println("我会游泳!");
}
}
public class AnimalTest {
public static void main(String[] args) {
Chick c=new Chick("喔喔","芦花鸡");
c.info();
c.eat();
c.play();
Duck d=new Duck("嘎嘎","斑嘴鸭");
d.info();
d.eat();
d.play();
}
}