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 局部变量(方法内、方法形参、构造器内、构造器形参、代码块内)