继承、接口:Java子类中如果含有父类中不包含的变量与方法,子类对象向上转型时就是丢失这些变量和方法。
1 interface SuperClass{ 2 int i = 2; 3 void f() ; 4 } 5 class SubClass implements SuperClass{ 6 int i = 1 ; 7 int j = 2 ; 8 public void f(){ 9 System.out.println("SubClass.f()"); 10 } 11 public void fun(){ 12 System.out.println("SubClass.fun()"); 13 } 14 } 15 public class TestInterface{ 16 public static void main(String[] args) { 17 SuperClass f = new SubClass() ; 18 f.f() ; //输出:"SubClass.f()" 19 //f.fun() ;//提示f中不包含fun() 20 System.out.println(f.i);//输出:2 21 //System.out.println(f.j);//提示f中不包含j 22 } 23 }
时间: 2024-11-11 23:46:25