构造方法
在创建对象的时候需要调用的方法,它是收尾的步骤
为什么要使用构造方法
构造方法能够让我们在创建对象的同时直接完成给属性的赋值操作
构造方法有哪些与众不同的地方
1.构造方法没有返回类型的定义 连void都没有
2.构造方法的名字要与类名完全相同 所以通常首字母都是大写
●Java当中只要是个类 就一定有构造方法,哪怕我们不写 系统也会自动提供一个无参的构造方法
●如果我们写了有参的构造方法还想要无参的构造方法就得自己写一个(存在构造方法,系统不会生成无参构造方法)
●构造方法的首行 默认就是super();
在执行当前构造方法之前,先去执行父类的构造方法 而且默认找无参的,而如果父类根本没有提供无参的构造方法,此时编译就报错,此时必须给父类一个无参的构造方法
●super() 可以传参数,学会super()传参指定调用父类哪个构造方法
●构造方法的首行 还可能出现this();
this() : 在执行当前的构造方法之前先去执行本类的其它构造方法 具体找哪一个,取决于this()的参数
●this()和super() 都只能出现在构造方法的第一行,所以不可能同时存在
●构造方法是可以重载的 也就是说一个类可以有无数个构造方法,但是构造方法是不可能覆盖的(因为它不会被继承)
Java当中的参数传递
基本数据类型传递参数赋值的时候 其实就是把值直接复制了一份,所以基本数据类型传递的是具体的值
引用数据类型传引用的值是一个内存指向的地址(Java当中只有值传递)