接口的概念:
Java里的接口可以看作是特殊的抽象类,即只包含抽象的方法和常量的抽象类,通过interface关键字来声明, 例如
interface Runner {
public static int DEFAULT_SPEED = 100;
public void run();
}
注意,run()方法,此处可以省略public abstract。因其默认就是public abstract的。
实现接口
与继承不同,一个类可以实现多个接口,实现的接口直接用逗号分隔。当然,该类需要实现这些接口中定义的所有方法;
一个类可以通过implements关键字”实现”接口。一个类实现了某个接口后必须实现该接口中定义的所有方法。看下面的代码,类实现了接口并实现了方法:
class AmericanCurl implements Runner , … {
public void run() {
System.out.println("run...");
}
}
继承的概念:
继承的格式: class 子类名 extends 父类名
继承的特点:
1:java不支持多重继承,子类只能有一个父类,但是可以通过实现多个接口来达到多重继承的目的
2:子类只能继承父类非私有的(public与protected)成员变量与方法
3:当子类定义的成员变量或者函数名与父类的名字相同时,子类会覆盖父类的成员或者方法
Java里的接口可以看作是特殊的抽象类,即只包含抽象的方法和常量的抽象类,通过interface关键字来声明, 例如
interface Runner {
public static int DEFAULT_SPEED = 100;
public void run();
}
注意,run()方法,此处可以省略public abstract。因其默认就是public abstract的。
实现接口
与继承不同,一个类可以实现多个接口,实现的接口直接用逗号分隔。当然,该类需要实现这些接口中定义的所有方法;
一个类可以通过implements关键字”实现”接口。一个类实现了某个接口后必须实现该接口中定义的所有方法。看下面的代码,类实现了接口并实现了方法:
class AmericanCurl implements Runner , … {
public void run() {
System.out.println("run...");
}
}
继承的概念:
继承的格式: class 子类名 extends 父类名
继承的特点:
1:java不支持多重继承,子类只能有一个父类,但是可以通过实现多个接口来达到多重继承的目的
2:子类只能继承父类非私有的(public与protected)成员变量与方法
3:当子类定义的成员变量或者函数名与父类的名字相同时,子类会覆盖父类的成员或者方法