例如:
要访问接口方法,必须实现接口 (有点像继承的),由另一个类使用implements
关键字(而不是extends
)。接口方法的实现由用implements
关键字的类提供:
public class Main { public static void main(String[] args) { Cat myCat = new Cat(); // 创建Cat对象 myCat.eat(); myCat.sleep(); } } // Interface interface Animal { public void eat(); // 接口方法(没有实现) public void sleep(); // 接口方法(没有实现) } // Cat 实现 Animal 接口 class Cat implements Animal { public void eat() { // 这里提供了eat()的实现 System.out.println("吃鱼"); } public void sleep() { // 这里提供了sleep()的实现 System.out.println("Zzz"); } }
1、定义和用法
implements
关键字用于实现interface
。
在Java中实现抽象的另一种方法是使用接口(interface)。接口(interface)是抽象方法和常量值的定义的集合。从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。
关于接口的说明:
1 ) 与抽象类一样,接口不能用于创建对象
2 ) 接口方法没有实现-实现由使用implements关键字类提供
3)在实现接口时,必须重写其所有方法
4)接口中的方法在默认情况下public abstract
5)接口属性默认情况下public static final
6)接口不能包含构造函数(因为它不能用于创建对象)
Java不支持多继承(一个类只能从一个超类继承),使用接口可以实现多继承。但是,这可以通过接口来实现多继承。要实现多个接口,请用逗号将它们分开。
2、实现多个接口(implements)
要实现多个接口,请用逗号分隔它们:
例如:
public class Main { public static void main(String[] args) { DemoClass myObj = new DemoClass(); myObj.myMethod(); myObj.myOtherMethod(); } } interface FirstInterface { public void myMethod(); // 接口方法 } interface SecondInterface { public void myOtherMethod(); // 接口方法 } class DemoClass implements FirstInterface, SecondInterface { public void myMethod() { System.out.println("myMethod"); } public void myOtherMethod() { System.out.println("myOtherMethod"); } }