abstract class(抽象类)和interface(接口)有什么区别?

.抽象类语法特点
    1.使用abstract关键字修饰
    2.有抽象方法的类一定是抽象类,抽象类不一定有抽象方法
     也就是抽象类可以有抽象方法,也可以有具体方法

    3.抽象类不能实例化,但可以作为子类对象引用
    4.子类继承抽象类,必须要实现所有的抽象方法。否则他也是抽象类
    5.抽象类可以有构造器(方便子类实例化调用),属性无限制
    6.抽象类可以继承抽象类,抽象类也可以继承具体类

 

java接口语法特点
   1.使用interface修饰
   2.接口是一种特殊抽象类(语法角度),只能有抽象方法和常量
   3.类实现implements接口,该类叫实现类
   4.接口不能有构造方法,不能有静态代码块(静态资源随着类的加载而加载,因为接口没有构造方法,所以不会加载,只能用来实现,这点来讲是冲突的)
   5.类实现接口必须实现所有抽象方法,抽象类也可以实现接口
   6.抽象类可以实现接口,接口不可以实现抽象类。抽象类可以继承抽象类,
   7.接口可以继承接口,且可以多继承接口。类可以多实现接口(接口间用逗号隔开)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值