抽象类的继承与接口的实现

1、抽象类

抽象类注意事项

a、abstract修饰类(外部类只能用public、abstract、final修饰或者不修饰)

  抽象类中的抽象方法用abstract修饰(此时不能有方法体否则报错)

b、抽象类中可以有具体方法,可以没有抽象方法

c、抽象类不能有实例,哪怕没有抽象方法

d、抽象方法只能用默认、public、protected修饰

子类继承抽象类

子类继承父类用extends

子类若想有实例必须实现(重写)所有父类的抽象方法,没有抽象方法就算了


2、接口

接口注意事项

a、interface定义的接口(接口只能用public或abstract,但是abstract加不加都行)

  空接口也叫标记接口(接口可以没有抽象函数)

b、接口中定义的变量只能被public abstract final修饰,没写或没写全这三个词会自动加上

  定义完就要赋值,毕竟全局变量要先定义嘛

  需要注意的是,在jdk7及之前的环境下变量前需要加final否则报错,jdk8开始就自动添加了

c、接口中定义的函数只能被public+static\abstract\default,其中public可以省略

  如果不写的话,默认为public abstract,没有方法体,可以被重写

  写default默认为public default,有方法体,可以被重写

  写static默认为public static,有方法体,如同普通类一样无法被重写

子类实现接口

子类实现接口用implements

子类若想有实例必须实现(重写)所有接口的抽象方法,没有抽象方法就算了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值