這個只需要記住一點,父類的任何屬性(變量可以看做屬性),子類均可繼承並覆蓋,allType(father)——》changeAnyType(son)——》AnyType
這是父類的所有代表屬性(我能想到的),包含普通實例變量,修飾符,訪問權限,數據類型,常量修飾符,靜態修飾符
package ExtendVariable;
package ExtendVariable; public class Ancestor {//父類 int ix=0;//普通實例成員屬性 double dx = 1;//不同類型實例成員變量 int bx=10000; final int fy=2;//普通常量成員屬性 static int sz=3;//普通靜態成員屬性 private int priVar = 4;//不同權限的成員屬性 int defVar = 5;//缺省權限 protected int proVar = 6; public int pubVar = 7; }
子類通過extend繼承父類之后,通過更改相關屬性
package ExtendVariable; public class son extends Ancestor{ //將int型改為double,將double改為int,將int型改為布爾型 double ix = 0.1; int dx = 10; boolean bx=true; //將普通常量變量改為普通變量 int fy = 20; //將靜態成員變量改為普通實例成員變量 int sz=30; //將所有權限顛倒過來 public int priVar=40; protected int defVar=50; int proVar=60; private int pubVar=70; public void showAllMember() { System.out.println("ix= "+this.ix); System.out.println("dx= "+this.dx); System.out.println("bx= "+this.bx); System.out.println("fy= "+this.fy); System.out.println("sz= "+this.sz); System.out.println("priVar= "+this.priVar); System.out.println("defVar= "+this.defVar); System.out.println("proVar= "+this.proVar); System.out.println("proVar= "+this.pubVar); } public static void main(String args[]) { son oa = new son(); oa.showAllMember(); } }
得出結果為:
ix= 0.1
dx= 10
bx= true
fy= 20
sz= 30
priVar= 40
defVar= 50
這里說明父類的任何屬性均可被子類繼承並任意覆蓋