package java09; //創建父類 public class Fu { int numFu = 10; int num =100; public void methodFu(){ System.out.println(num); } } package java09; //創建子類 public class Zi extends Fu { int numZi = 20; int num =200; public void methodZi(){ System.out.println(num); } } package java09; /* 在父類的繼承關系中,如果成員變量重名,則創建子類對象時,訪問有兩種方式: 直接通過子類對象訪問成員變量: 等號左邊是誰就優先用誰,沒有則向上找 間接通過成員方法訪問成員變量: 該方法屬於誰,就優先用誰,沒有則向上找 * */ public class DemoExtendsField { public static void main(String[] args) { Fu fu = new Fu();//創建父類對象 System.out.println(fu.numFu);//10 只能使用父類的東西,沒有任何子類的內容 System.out.println("=============="); Zi zi = new Zi(); System.out.println(zi.numFu);//10 System.out.println(zi.numZi);//20 System.out.println("================="); //等號左邊是誰,就優先用誰 System.out.println(zi.num);//200 //這個方法是子類的,優先使用子類,沒有在向上找 zi.methodZi();//200 //這個方法是在父類中定的, zi.methodFu();//100 } }