Java中为什么要用构造方法初始话成员变量,直接像int a=5这样声明不就可以了吗?

来源:百度知道 编辑:UC知道 时间:2024/05/22 23:53:02

声明时初始化,当然是最好的了。但万一有人没有在声明时初始化呢?这就用构造方法初始化,即经过构造方法,java保证所有成员变量都是初始化过的。

1、类的成员变量都是由构造方法初始化的。就像某个类中有private int a = 5;这个实际上的初始化是在构造方法中完成的。
2、另外重要的一点,当类成员变量没有被初始化时,(private int a;)构造方法会用缺省值将其初始化,int的初始为0 引用类型初始为null等。

这是为了体现封装性,一个类的内部细节要安全,不能随便就能进行修改.

而且你可以在构造函数中设置一些判断的语句限定一下附值的条件,进一步加强内部变量的安全.

C学多了都这么认为。你要学JAVA请忘掉C。

在同一个类中可以用直接赋值的方式初始化成员变量,但在另一个类中建立这个类的对象时可以就会隐式的调用构造函数给这个对象以初始值,这样才满足对象实例化的特性,同时还可以通过构造函数给对象赋值.
构造函数也是函数,可以通过重载覆盖,设置访问权限等方式增加程序的功能,也就是和JAVA的多态性继承性封装性吻合.