1 对象和对象引用的区别是什么?请举例说明 meinv cqq=new meinv(); 右边的“new meinv”,是以Test类为模板,在堆空间里创建一个meinv对象。 左边的“meinv cqq”创建了一个对象引用,存放在栈空间中。用来指向meinv对象。 类似左边是遥控器,右边是机器,进行匹配
2 对象作为参数传递的特点是什么?请举例说明 对象的参数传递是引用传递,传递对象的地址。
3 对象初始化顺序是怎样的?请举例说明 1 默认初始化为0 2 数据成员定义处的初始化语句 3 自动调用构造方法,为成员指定初值 4 类的static字段与非static字段区别是什么?什么情况应该使用static修饰符 请举例说明 static修饰符修饰的域变量不属于任何一个类的具体对象,被保存在类的内存区的公共储存单元中,而不是保存在某个对象的内存区域内,因此,一个类的任何对象访问它的时候得到的数值都是相同的,方式为“类名.域名”,也可以通过对象引用来访问;而非static字段只能用对象引用,属于某一对象。 当对象中出现共享数据时,就一应该使用static修饰。 举例: 5 java中final修饰符都有什么作用?请举例说明 修饰类属性时,该属性为常量; 修饰类方法时,该方法不可被子类覆盖 修饰类时,该类为最终类,不可继承
6 java中float【10】 arr;语句正确么?为什么? 不正确;因为属于对象引用,相当于c++中的指针,可以初始化,但不能指定长度。应该为int[] arr=new int[10]。
*7 java数组元素类型为基本数据类型和引用类型时,有什么不同?请举例说明 基本数据类型时,如int [] a=new int[10];此时就创建了十个Int类型的堆空间,默认为0;而引用类型时,如String [] a=new String[10];此时就创建了十个String类型的对象引用,默认为null,相当于十个遥控器,此时还没有机器与之匹配,无堆空间,需要再次进行new操作,如a[0]=new string(‘cqq’),进行匹配