继承和实现都存在的话,代码应该怎么写?
extends关键字在前
implements关键字在后
接口通常模拟的是行为动作
public class Test04 {
public static void main(String[] args) {
//创建对象 (表面看Animal类没起作用)
Flyable f = new Cat(); //多态
f.fly();
Flyable f2 = new Pig();
f2.fly();
}
}
class Animal {
}
//可飞翔的接口 (是一对翅膀)
interface Flyable {
void fly();
}
// 动物类子类:猫类
class Cat extends Animal implements Flyable{
public void fly() {
System.out.println("飞猫起飞,翱翔太空的一只猫,很神奇")
}
class Snake extends Animal {
}
class Pig extends Animal implements Flyable {
public void fly() {
System.out.println("是一只会飞的猪");
}
}
同一个接口,调用同一个fly()方法,最后的执行效果不同
class Fish extends Object implements Flyable {
}
没写extends, 也是有的,默认继承Object
class Fish implements Flyable {
public void fly() {
System.out.println("fish is flying");
}
}
一个非抽象的类,实现接口的时候,必须将接口中所有方法加以实现
一个类可以实现多个接口
仅供学习使用,内容版权归B站老师所有。