-
语法点:接口,多态
-
按步骤编写代码,效果如图所示:
-
编写步骤
-
定义接口Universe,提供抽象方法doAnything。
-
定义普通类Star,提供成员发光shine方法,打印“star:星星一闪一闪亮晶晶"
-
定义普通类Sun,
继承Star类,重写shine方法,打印"sun:光照八分钟,到达地球"
实现Universe接口,实现doAnything,打印"sun:太阳吸引着9大行星旋转"
-
测试类中,创建Star对象,调用shine方法
-
测试类中,多态的方式创建Sun对象,调用doAnything方法,向下转型,调用shine方法
一、定义接口Universe:
public interface Universe {
public void doAnything();
}
二、定义普通类Star:
public class Star {
public void shine(){
System.out.println("Star:星星一闪亮晶晶");
}
}
三、定义普通类Sun:
public class Sun extends Star implements Universe {
public void shine(){
System.out.println("sun:光照八分钟,到达地球!");
}
@Override
public void doAnything() {
System.out.println("sun:太阳吸引着9大行星旋转");
}
}
四、测试类Test:
public class Test {
public static void main(String[] args) {
Star star = new Star();
star.shine();
System.out.println("====================");
Universe sun = new Sun();
sun.doAnything();
Sun sun1 = (Sun) sun;
sun1.shine();
}
}
运行结果:
Star:星星一闪亮晶晶
====================
sun:太阳吸引着9大行星旋转
sun:光照八分钟,到达地球!
Process finished with exit code 0