Abstract 抽象

抽象的概述:

将功能定义抽象,那么该类就是抽象类!
动物有很多,应该将动物类定义为一个抽象类;动物本身不是一个具体动物,
猫和狗具体的事物,猫和狗和吃的方法不一样,在动物类中把吃的这个方法,定义为抽象方法,那么这个类就必须定义为抽象类;

java针对将一个类定义为抽象———–>abstract:抽象的意思
抽象类的特点:
* 一个类中可以抽象方法.也可以有非抽象方法
抽象方法的格式:
* public abstract void method();

注意:抽象类不能直接实例化(创建对象)
关于抽象的代码练习:

//非抽象类
abstract class Animal2{
    public void show(){} //非抽象方法    
//  public  abstract void method(){} //有语句体的    
    //抽象方法
    public abstract void eat();//空语句体!
    public abstract void sleep();
}
//abstract class Cat extends Animal{
//  public void eat(){
//      System.out.println("猫吃鱼...");
//  }
//}
class Cat2 extends Animal2{
    @Override          //方法重写
    public void eat() {
        System.out.println("猫吃鱼...");
    }
    @Override            //方法重写
    public void sleep() {               
    }   
}
class Dog2 extends Animal2{
    @Override
    public void eat() {
        System.out.println("狗吃骨头...");
    }
    @Override
    public void sleep() {       
    }   
}
public class AbstractDemo {
    public static void main(String[] args) {
        //创建动物类对象
//      Animal a = new Animal();//抽象类不能直接实例化(创建对象)
        //使用子类具体的功能,就需要创建子类对象
//      Cat c = new Cat();      
        Animal2 a = new Cat2() ;//属于多态的第三个条件
        a.eat();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值