JAVA当中十分重要的一个关节
接口:
1.简单介绍
接口所体现的思想就是[规则]
如果发现了一个类:
1.没有任何的成员变量,普通的成员方法
2.没有任何的普通的构造方法
那么就是一个要制订规则的类:接口
接口的定义格式:
interface 类名称{
}
对于接口的规则进行设计接受的创建:
class 类名 implacement 接口的类名{
在这里需要输入具体的方法,从而实现一次方法重载
让接口完整
}
接口在日常生活当中就十分常见,插座,手机,电脑的接口等等,站在设计者的角度来看,这个接口的形状,更像是一种设计的规则
在JAVA当中也是这个原理,接口就是一种对规则的声明
2.接口的特殊注意事项
1)接口不能够进行一个实例化(其实接口有很多跟抽象的一些注意事项是大差不差的),不能够创建对象
2)接口之间的关系是直接通过implacement而直接实现的
接受接口的两种规则:
1.对接口当中所有的方法再次重新进行构造(推荐使用这一种,平常也是这样) ---重写所有的抽象方法
2.创建一个新的接口进行一个接收(过于麻烦)---将所有的现实类都转变成为一个跟接口一样的抽象类
public static void main(String[] args) { } } interface inter{ public abstract void show(); public abstract void method(); public abstract void way(); } class interment implements inter{ public void show(){ System.out.println("我要吃~~~~饭"); } public void method(){ System.out.println("我要睡~~~~觉"); } public void way(){ System.out.println("我要回~~~~寝!"); } }
3.接口中的成员特点(主要区分为两大类型):
一:
1>成员变量:
如果在抽象类当中定义一个成员变量,那么系统将会固定的在相应的成员变量之前添加上一个
public(可以跨包进行一个访问,访问权限比较的大)
static(可以直接使用相应的类名进行直接调用相应的成员变量,相应的,成员变量也会进行一个共享)
final(直接终断相应的成员变量初始化,在之后的方法当中无法再进行修改)
这三个特点会在编码当中自主的存在,所以不需要再进行打印
2>构造方法:
在接口当中是不存在任何有逻辑的方法的,构造方法也不会在接口当中存在
3>成员方法:
在接口当中构建的成员方法都会是一个抽象的方法,会在相应的方法前自主的添加abstract
所以只能够按照抽象类的抽象方法来直接的使用
二:
接口与接口之间:不仅存在单线关系,也存在多线的关系,甚至还能够进行多层次的使用
interface A{ void showA(); } interface B{ void showB(); } //接口与接口之间可以是一个继承的关系,相当是认了一个干爹,但是亲爹在这里还是可以直接super的 //原因是,亲爹还是object(祖宗).还可以同时的继承多个亲爹 interface C extends A,B{ void showC(); } class D implement C{ public void showA(){ } public void showB(){ } public void showC(){ } }
2.类与类之间:
只支持单继承,不支持多继承,但是支持多层次的继承(就是可以A-->B-->C)
3.类与接口之间:
实现的关系,可以单实现,可以多实现,甚至可以在继承的同时实现多个接口的执行(在倒数第一张代码的最后几行也有体现,接口AB,又实现了C)
tips:
在接口当中是不存在逻辑问题的,因为在其中构建的方法本身就没有逻辑.因为这样的存在,接口之间才能够多线进行一个继承
OVER