前言
在家族继承中,子承父业,一个家族企业中,父亲未完成的事业,需要儿子一一实现,如果后来的子孙想要增加一份新的事业,或者没有祖业的人想增加一份新的事业,就需要贵人的相助。在java中,接口,就是这个贵人,当然也可能是多个贵人。
一、接口是什么?
接口,在java中可以承载的一个或多个抽象方法的类型。
通过 interface 关键字来创建接口。
一个类通过 implements 关键字,实例化接口,来履行接口的抽象方法。
二、使用方法
1.实操展示
(1)接口的创建:
创建 Clothes接口
创建material(),style()抽象方法
通过 default 关键字,创建use()成员方法
package projectMy; public interface Clothes { //通过 interface 关键字创建了一个 Clothes接口 //声明变量 //抽象方法 public void material(); public void style(); //创建了两个抽象方法,material(),和style()方法 default void use() { System.out.println("用处:穿"); //default 关键字,可以在接口中创建成员方法 } }
总结:
1.接口是隐式抽象的,当声明一个接口的时候,不必使用 abstract 关键字转变抽象
2.接口中每一个方法都是隐式抽象的,声明时同样不需要 abstract 关键字转变抽象
3.接口中的方法必须为 public 或 protected,是公有的,方法要被类所落实实现
4.接口中可以使用 default 关键字,创建 成员方法
(2)接口的实现:
创建 Jeans 类
通过 implements 关键字履行 Clothes 接口
实现 material(),style()抽象方法
main方法中,调用实现后的material(),,style()方法,接口成员方法,use()方法
package projectMy; public class Jeans implements Clothes{ public void material() { System.out.println("面料:丹宁布"); //实现了接口中的 material()方法 } public void style() { System.out.println("样式:裤子"); //实现了接口中的 style() 方法 } public static void main(String[] args) { Jeans jean = new Jeans(); //创建Jeans类对象,调用实现的方法,接口中的成员方法 System.out.println("牛仔裤"); jean.material(); jean.style(); jean.use(); } }
总结:
1.类履行接口时,必须实现接口中所有的抽象方法,抽象类除外
2.类使用 implements 关键字履行接口的抽象方法
3.类实现接口的语法 (一个类允许履行多个接口)
public class A implements interface1{ //A类,实现 interface1接口 } public class B implements interface1,interface2,interface3{ //B类,实现 interface1,interface2,interface3接口 }
4.重写接口中声明的抽象方法时,注意:
(1)类在实现接口的方法时,不能抛出强制性异常,只能在接口中,或者继承接口的抽象类中抛出该强制性异常
(2)类在重写方法时要保持一致的方法名,并且应该保持相同或者相兼容的返回值类型
(3)如果实现接口的类是抽象类,不实现该接口的抽象方法,不会报错
(3)接口的继承
创建父类接口
创建抽象方法 useful()方法
package projectMy; public interface Use { //创建了父类接口 Use接口 public void useful(); //创建了抽象方法 useful()方法 }
子类接口继承父类接口,不用实现父类的 useful()抽象方法
package projectMy; public interface Clothes extends Use{ public void material(); public void style(); //创建了两个抽象方法,material(),和style()方法 default void use() { System.out.println("用处:穿"); //default 关键字,可以在接口中创建成员方法 } }
总结:
1.通过 extends 关键字,实现子类接口继承父类接口
2.子类接口 不必实现 父类接口的抽象方法
3.子类接口 允许继承 多个 父类接口
public interface A extends B,C,D{ //子类接口A 继承了 三个父类接口B,C,D }
2.注意事项
(1)接口与类的区别
one.概念上,接口不是类,类描述对象的属性和方法;接口包含,类,需要的抽象方法
two.接口不能被new实例化
three.接口没有构造方法,成员变量只能有 static 和 final 类型
four.接口是被类履行,不是被类继承
(2)接口与抽象类的区别
one.一个子类只能继承一个抽象父类,但可以履行多个抽象父类接口
总结
本文简单介绍了Java中的接口,具体的用处,需要我们投入于真正的项目实践中了。对“注册和登录账号系统”感兴趣吗?Java语言可以通过正则表达式实现哟。