类与对象

一.验证

1.

 

 

2.

 

 

3.重载equals()方法

 

 

4.TestStaticInitializeBlock.java

 

两个引用类型变量中保存的地址不同

二.定义变量int value=100,MyClass obj=new MyClass();两种方式定义的变量是一样的吗?

  答:obj是对象变量,声明时必须赋值为nullvalue是原始数据类型变量,要赋初始值。

三.原始数据类型的变量可以用==判断两变量值是否相等,对象变量也可以用==判断两变量值是否相等吗?

  答:在原始数据类型变量中,==比较变量保存的数据是否相等。在引用类型变量中,==比较两变量是否引用同一对象。

四.这个方法有哪些不同之处?

  答:没有基本类型,没有返回值。类的构造方法也叫构造函数,构造方法与类名相同,没有返回值。如果类没有定义构造函数,java会自动提供一个没有参数的默认构造方法。

五.Public class Test

{

 Public static void main(String args[])

  {

   Foo obj1=new foo();

   }

}

Class foo

 {

  Int value;

  Public foo(int v)

   {

    Value=v;

   }

 }

说出错误原因。

  答:class foo{}类提供了一个自定义构造方法public foo(int v),导致系统不再提供默认构造方法。

六.总结java字段初始化的规律。

  答:初始化顺序:执行类成员定义时指定的默认值或类的初始化块,哪一个在前面就先执行哪一个。类的初始化块适合封装那些对象创建时必须执行的代码。

七.访问类的静态字段。

  答:class a{ static int m;} 访问:a.m=1;

八.运行例子5,总结静态初始化块的执行顺序。

  答:1.静态初始化块只执行一次2.创建子类型的对象时,也会导致父类型的静态初始化块的执行。

九.类的静态方法只允许访问静态数据,如何在静态方法中访问类的实例成员?

  答:在静态方法中访问实例成员需要进行类的实例化。

原文地址:https://www.cnblogs.com/cxr0711/p/5983960.html