抽象类:具有抽象方法的类就是抽象类
抽象方法:没有方法体的方法就是抽象方法
作用:主要协同工作,制定标准
特征:
- 抽象方法就是没有方法体的方法, 方法体就相当于函数体,抽想方法前,必须使用abstract 关键字,且方法后不能够写{},但是要写结束符;
- 如果类中有抽象方法,那么这个类的前面也需要 abstract关键字修饰
- 抽象类中可以有非抽象方法
- 抽象类可以参数,要实现该抽象方法,必须传入同样参数
- 不能直接实例化,必须由其他的类继承并且完全实现出所有的抽象方法,才可以使用,抽像类主要是给其他类进行继承操作
- 抽象类可以继承抽象类
- 抽象类中不能使用private 关键字
接口:
如果一个类中没有任何非抽象方法,并且不存在常量之外的任何成员属性,那么这个类就是一个接口
特征:
- 声明一个接口不使用class关键字,而是使用interface关键字
- 接口中的抽象方法不写abstract关键字,虽然他也是一个抽象方法
- 接口只能用public 关键字, 不能使用 protected和private关键字
- 接口中不允许有任何的成员属性,除了常量
- 接口的继承不是使用extends而是使用implements关键字
- extend只能继承一个普通类或者一个抽象类,implements能继承多个接口,从而模拟多继承
抽象类和接口的区别:
抽象类的成员可以具有访问级别,而接口的成员全部是public级别
抽象类可以包含成员属性、而接口只能有常量
抽象类可以继承接口,而接口不能继承抽象类
抽象类的成员可以有具体实现、而接口不行
抽象的子类可以选择性实现基类的抽象方法,而接口的子类必须全部实现
原文地址:https://www.cnblogs.com/vijarye/p/9390118.html
时间: 2024-11-14 13:28:24