java里 先有类,再有构造器。 个人觉得,构造器、构造方法,这名字起的不好,相当的不好。 如果让我起名字,我觉得 应该换做 初始化器。
我先说说 构造器的由来吧, 类里面有静态属性, 这些属性需要初始化。 构造器干什么的呢? 就是用来初始化的。 要么由编译器指定初始化的值,要么由人来指定。
由编译器指定的初始化值,称作默认构造器。 如果要人为指定初始化值,那么默认构造器会自动消失。
构造器是一个方法(函数、function)。可以被调用,但是没有返回值的。 所以直接public 类名(形参){,,,,,,}。
说下new, new一个新的对象,编译器有两个动作 调用构造器是一个动作, 返回新对象的首地址给对象名字是第二个动作。
为什么构造器的名字必须和类名相同呢?
主要是因为 java在 new的时候会自动调用构造器的,编译器要调用构造器必然得知道构造器的名字 ,你要是乱起个名字,编译器在new的时候怎么初始化新对象呢,所以保持和类名一致,这种做法保证了编译器能够找到构造器。