// 方案1:只使用抽象类abstractclassDoor{abstractvoidopen();abstractvoidclose();abstractvoidalarm();}// 具体使用时classAlarmDoorextendsDoor{voidopen(){}voidclose(){}voidalarm(){}}// 方案2:只使用接口interfaceDoor{voidopen();void
abstract class Door{ abstract void open(); abstract void close(); } 使用interface方式定义Door: interface Door{ void open(); void close(); } 其他具体的Door类型可以extends使用abstract class方式定义的Door或者implements使用interface方式定义的Door。看起来好像使用 abstract class和interface没有大的区别。
其他具体的Door类型可以extends使用abstract class方式定义的Door或者implements使用interface方式定义的Door。看起来好像使用abstract class和interface没有大的区别。 如果现在要求Door还要具有报警的功能。我们该如何设计针对该例子的类结构呢(在本例中,主要是为了展示abstract class和interface反映在设计理念上的区别,其他方面...
接口不能创建对象。 // 接口用关键字interface来定义publicinterface接口名{// 成员变量(默认是常量final)// 成员方法(默认是抽象方法abstract)} 实现类(implements) 接口通过类实现的,实现接口的类成为实现类 实现的关键字:implements 修饰符class实现类implements接口1,接口2,接口3,...{// 重写全部抽象方法} 一...
修饰符class类名implements接口1,接口2,……{……} 示例 Animal接口: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 //定义接口AnimalinterfaceAnimal{intID=1;//定义全局常量,编号StringNAME="牧羊犬";//定义全局常量,名称voidshout();//定义抽象方法 shout()publicvoidinfo();//定义抽象方法 info()sta...
public class Test implements ITest { public static void main(String... args) { ITest test = new Test(); //通过实例引用接口ITest的常量字段 System.out.println(test.strTest); //hello world //通过接口引用常量字段 System.out.println(ITest.strTest); //hello world ...
2.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承,但是可以用接口 来实现,这样就要用到implements,继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了 比如 class A extends B implements C,D,E implements是一个类实现一个接口用的关键...
abstract class Animal { String name; int age; abstract void Run(); } interface Jump{ void jump(); } class Dog extends Animal implements Jump{ public void Run(){ System.out.println("跑步"); } @Override public void jump() { System.out.println("Tom学会了跳高"); ...
用逗号分开就行了 ,比如 class A extends B implements C,D,E。
public abstract class AbstractClass { public abstract void say(); } public interface Interface { void say(); } public class SubClass implements Interface{ @Override public void say() { System.out.println("github/shellhub"); } public static void main(String[] args) { long startTime = Syste...