继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Java中的abstract和Interface

霜花似雪
关注TA
已关注
手记 163
粉丝 1.5万
获赞 8507

abstract:修饰符可以修饰类和方法。抽象类不能实例化,不能new出对象。
子类继承抽象类,必须实现父类的抽象方法,否则子类也必须是抽象类
abstract修饰符修饰的类叫做抽像类
注意:有抽象方法的类一定是抽象类,抽象类不一定有抽象方法。
有抽象方法的类,必须是抽象类。但是抽象类中不一定有抽象方法

  • 抽象类不能实例化,只能实例化它的子类,但是子类也不能是抽象类
    抽象方法没有方法体,抽象方法以分号 ; 结束 public abstract void fun();
    抽象方法没有方法体,构造方法没有返回类型
    抽象类可以用于声明,但不允许创建对象
    抽象类可以被子类继承,从而创建子类对象
    abstract修饰的方法叫做抽象方法
    拥有抽象方法的类必须是抽象类
    抽象方法由子类实现
    抽象类是更高层次的抽象

接口(Interface)是种特殊的抽象类。
接口里面的属性都是public static final类型的,
接口里面的方法都是public abstract类型的。
一个类可以实现多个接口,但只能继承一个父类。
一个接口可以继承多个父类接口(接口可以多重继承,而类不行)
接口可以多重继承,继承多个父类接口。
接口侧重于描述对象的功能性特征。
接口继承接口使用 extends 关键字
接口实现了特殊的多继承
子类的多实现的同时还可以继承一个父类

使用接口的好处:增加程序的通用性
声明引用时要使用接口类型
方法的参数要声明成接口类型
方法的返回值要声明成接口类型
接口特性
1.接口不可以被实例化
2.实现类必须实现接口的所有方法
3.实现类可以实现多个接口
4.接口中的变量都是静态常量

接口就是标准,它不负责具体的实现

抽象类描述事物的本质 xxx is a xxxx
接口描述事物的功能 xxx has a xxx
任何一个事物都可以从它是什么,以及它有什么两方面来分析
区别:
1.接口是公开的,里面不能有私有的方法或变量,而抽象类是可以有私有方法或私有变量的
2.实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法
3.接口可以实现多重继承,而一个类只能继承一个超类,但可以通过继承多个接口实现

打开App,阅读手记
11人推荐
发表评论
随时随地看视频慕课网APP