猫和狗(抽象类)
图文和代码解释:
图:
代码:
Animal父类(抽象类)
package CCom.Cnn;
//抽象类
public abstract class Animal {
private String name;
private int age;
public Animal() {
}
public Animal(String name, int age) {
this.name = name;
this.age = 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;
}
public abstract void eat();
}
Cat(子类)
package CCom.Cnn;
public class Cat extends Animal {
public Cat(){
}
public Cat(String a,int b) {
super(a,b);//可以调用父类(抽象类)变量
}
public void eat(){
System.out.println("猫都吓破胆了");
}//子类实现抽象类的eat抽象方法
}
Dog(子类)
package CCom.Cnn;
public class Dog extends Animal {
public Dog(){
}
public Dog(String a,int b) {
super(a,b);//可以调用父类(抽象类)变量
}
public void eat(){
System.out.println("狗都吐了");
}//子类实现抽象类的eat抽象方法
}
测试类
package CCom.Cnn;
/*
猫和狗(抽象类)
*/
public class AnimalDemo {
public static void main(String[] args) {
Animal a=new Cat();
a.setAge(18);
a.setName("沸羊羊");
System.out.println(a.getName()+"今年"+a.getAge()+"你可真牛逼啊");
a.eat();
a=new Dog();
a.setAge(17);
a.setName("美羊羊");
System.out.println(a.getName()+"今年"+a.getAge()+"你可真茶花啊");
a.eat();
a=new Cat("喜羊羊", 19);
System.out.println(a.getName()+"今年"+a.getAge()+"阳光帅气");
}
}
输出的结果:
沸羊羊今年18你可真牛逼啊
猫都吓破胆了
美羊羊今年17你可真茶花啊
狗都吐了
喜羊羊今年19阳光帅气