Java中抽象类和接口小结

Java中抽象类和接口类小结

一、抽象类、接口类的含义
抽象类相当于多个子类的模板,拥有多个子类相同的特征,子类照着这个模板进行拓展、改造,以此避免了子类设计的随意性。
接口类相当于是一个总纲,通过在接口中定义方法来规定接口实现者一定要实现什么方法。因此定义接口后不能随意更改,会影响后续的接口实现者,且造成了对接口实现者进行不必要的修改。
接口类和抽象类都是final类,只能被其他类继承,且两者都不能实例化,即不能使用new对象的操作。接口和抽象类都可以含有抽象方法,实现接口和抽象类的子类必须重写并实现其含有的抽象方法。
——————————————————————————
二、抽象类、接口类的不同
1.接口类只能定义静态常量,即在定义变量同时要赋值并且用static修饰,例如(static int a = 2);而抽象类可以定义普通成员变量,也可以定义静态常量。
2.接口里不能含有构造器,而抽象类里可以含有构造器,不过其构造器不是用于创建对象,而是用于子类的调用来完成抽象类的初始化。
3.接口里的方法只能为私有(private)方法、抽象(abstract)方法、静态(static)方法、默认(default)方法,若定义普通方法就不能有方法实现体;抽象类里可以为普通方法提供实现体。
4.接口里不能有初始化块,而抽象类可以。
_______________________________________________
三、注意
1.抽象类里不能用’ abstract ’ 修饰成员、局部变量还有构造器。
2.private和abstract、static和abstract, 这两种都不能同时修饰方法。
3.一个接口可以实现多个父接口,但接口只能继承接口,不能继承类。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值