重学java——抽象类

重学java——抽象类,第1张

重学java——抽象类

 抽象类如何创建对象 用多态的i形式创建对象

 如果创建一个新的dog类,要么也要重写抽象方法,要么就需要把dog变成抽象类 

 

package com.cn;

public class Animaldemo {
    public static void main(String[] args) {
    //抽象类如何创建对象 用多态的i形式创建对象
//        如果创建一个新的dog类,要么也要重写抽象方法,要么就需要把dog变成抽象类
//        成员变量
        Animal animal = new Cat();
        animal.setAge(45);
        animal.setName("修猫");
        animal.eat();
        animal.show();
        System.out.println(animal.getAge()+"    "+animal.getName());

        Animal animal1 = new Dog();
        animal1.setAge(18);
        animal1.setName("修勾");
        animal1.eat();
        animal1.show();
        System.out.println(animal1.getAge()+"    "+animal1.getName());
    }
}
package com.cn;
//一样的类一样的方法吧abstact 抽象类里可以有不抽象的方法
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();
    public abstract void show();
}
package com.cn;

public class Cat extends Animal{
    public Cat() {
    }
    public Cat(String name,int age) {
        super(name,age);
    }
    public void show(){
        System.out.println("修猫飞飞");
    }
    public void eat(){
//重学方法
        System.out.println("eat fish");
    }
}

package com.cn;

public class Dog extends Animal {
    public Dog() {
    }

    public Dog(String name, int age) {
        super(name, age);
    }
    public void show(){
        System.out.println("修勾飞飞");
    }

    public void eat(){
        System.out.println("dog eat meat");
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5684199.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存