接口
接口的概念:
狭义:java中的接口 广义:相当于一个规则,需要去遵守 使用interface修饰
接口跟类一样 都会被翻译成.class文件运行
接口特点:
1.接口中只可以声明 抽象方法(在jdk1.8后 接口中扩充了静态的方法和默认方法 )
静态方法,只能通过接口名调用 默认方法只能通过接口实现类的对象来调用
2.接口中没有构造方法 只能同过实现类的实现,不能继承
3.接口中可以声明变量 默认是公开的静态常量
4.接口是只能有抽象方法 因为在声明的时候默认是被 public abstract 修饰的
5.实现接口的类名 一般都以 Impl 结尾
public static void main(String[] args) {
// 创建接口 使用多态的形式创建
InterA a = new InterAImpl();
a.fun();
}
}
// 声明一个接口
interface InterA {
int num = 10;
public abstract void fun();
}
// 接口 使用 implments 关键词 实现
// 接口的实现类 类名 一般都以 Impl 结尾
class InterAImpl implements InterA {
// 实现接口中的 抽象方法
@Override
public void fun() {
// TODO Auto-generated method stub
System.out.println(num);
System.out.println("我是实现类的fun方法");
}
抽象类和接口又有哪些区别呢
* 1.使用方法
* 抽象类:继承 extends
* 接口:实现 implement
* 2.成员变量
* 抽象类:可以是常量 也可以是变量
* 接口:只能是常量
* 3.成员方法
* 抽象类:可以是抽象方法 也可以成员方法
* 接口:只可以是抽象方法(静态方法和默认方法)
* 4.构造方法
* 抽象类:有
* 接口:没有
类与接口之间的关系
* 类与类之间的关系 只允许单继承
* 类和接口的关系 实现的关系 也可以多实现
* 接口和接口的关系 接口和接口的关系 可以单继承也可以多继承