classCar{
String color ="red";int num =4;voidshow(){int a =10;
System.out.println("color="+color+",num="+num);}}classCarTest{publicstaticvoidmain(String[] args){
Car c1 =newCar();
Car c2 =newCar();
c1.color ="blue";
c1.show();
c2.show();}}
變量名在棧中;new的對象在堆中。
5.類的方法內是否可以定義變量?是否可以調用屬性?是否可以定義方法?是否可以調用方法?
是;是;否;是
6. 什麼是方法的重載?
兩同一不同:同一類、相同方法名;參數列表不同。
如何調用確定的方法:方法名--->參數列表
7.說明Java方法中的參數傳遞機制的具體體現?
基本數據類型:數據值
引用數據類型:地址值(含變量數據類型)
Person p1 =newPerson();
Use u1 = p1;//編譯錯誤,類型不一致。
8.談談return關鍵字的內存解析
1.結束方法
2.針對於有返回值的方法 return+ 返回的數據
9. 提供如下代碼的內存解析
publicclassTransferTest3{publicstaticvoidmain(String args[]){
TransferTest3 test =newTransferTest3();}publicvoidfirst(){int i =5;
Value v =newValue();
v.i =25;second(v,i);
System.out.peintln(v,i);}publicvoidsecond(Value v,int i){
i =0;
v.i =20;
Value val =newValue();
v = val;
System.out.peintln(v.i+" "+i);}}classValue{int i =15;}
1.內容結構:棧(局部變量)、堆(new 出來的結構:對象(非static成員變量)、數組)
2.變量:成員變量 vs 局部變量(方法內、方法形參、構造器內、構造器形參、代碼塊內)