接口与抽象类(java核心卷1-D6)

一、定义接口
public interface 接口名 {}

二、接口的特点
1)接口中的属性必须是常量,默认全部用public static final修饰

2)接口中的方法必须都是抽象方法,即public abstract(抽象类中的可以有抽象方法也可以没有抽象方法)

3)接口没有构造方法,不能实例化。但是可以变成一个变量类型,接口变量必须引用实现了接口的类对象(???)

4)类实现(implements)接口,就必须将接口中的所有方法全部重写,类中的方法必须有方法体,而接口中的必须没有方法体

5)一个类可以实现多个接口
public interface c{}
public interface D{}
public class E implements C,D{} //e要重写CD 中的全部方法

6)一个接口可以继承多个接口
public interface F extends C,D{}
如果class G implements F{}
那么G类既要重写F接口的方法,还必须重写F接口从C 和D接口中继承来的方法

7)一个类可以先继承一个父类,在实现多个接口
public class H extends A implements C,D{}

三、定义抽象类
public abstract class A(){};

四、抽象类的特点
1)抽象类是介于接口和类之间的一种类

2)抽象类中的方法既可以是具体方法 ,也可以是抽象方法

3)抽象类中的具体的方法可以自定义访问限定范围,抽象的方法也可以自定义访问限定范围,但不能是私有的,因为抽象类是用来继承的,因此抽象类和抽象方法也不能被final关键字修饰

5)抽象方法是有构造方法的,但是不能直接调用实例化,只能重写后调用

6)一个抽象类只能继承(extends)一个类,如果一个普通的类继承抽象类,必须重写抽象类中的方法;一个类也只能继承一个抽象类,抽象类可以实现多个接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值