Abstract 关键字

Abstract 关键字

Abstract 可以修饰类、方法

关键点
  • 如果一个类被修饰为abstract,则此类必须被继承使用
  • abstract类不能存在对象
  • abstract类可以将子类的共性最大型度的抽取出来,放在父类中,以提高简洁性
  • abstract修饰某个方法的,此时这个方法为抽象方法,不许呀实现,在子类中实现后才可以生效
  • 抽象类中可以包含普通的方法,也可以没有抽象方法
注意
private void print(){};此语句表示方法的空实现。 
Abstract void print(); 此语句表示方法的抽象,无实现。

子类的方法必须覆盖父类的抽象方法,方法才能够起作用。

为了实现多态,那么父类必须有定义。而父类并不实现,留给子类去实现。此时可将父类定义成abstract类。如果没有定义抽象的父类,那么编译会出现错误。
Abstract和static不能放在一起,否则便会出现错误。(这是因为static不可被覆盖,而abstract为了生效必须被覆盖。)

例子
public abstract class Telphone{
    public abstract void call();
    public abstract void message();
}
public class CellPhone extends Telphone{
    @Override
    public void call(){

    }
    @Override
    public void message(){

    }
}
public class SmartPhone extends Telphone{
    @Override
    public void call(){

    }
    @Override
    public void message(){

    }
}
public class Test{
    public static void main(String[] args){
        Telphone tp1 = new CellPhone();
        tp1.call();
        tp1.message();
        Telphone tp2 = new SmartPhone();
        tp2.call();
        tp2.message();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值