Hi,我是小白云Casy,这是我的java学习笔记。
上一篇说到了我学习java的历史背景:小白云0基础学Java | 如何在idea拉取git代码并完成Maven项目构建
本打算这一章节把拉下来的代码跑起来的,可是发现,根本跑不起来,很多东西都不会啊!
哲学上,那句话怎么说来着:经济基础决定上层建筑。
在代码上也适用实用,还没学会基础的语法,简单的Demo都没有练习过,怎么可能一下就学会别人写好的项目呢?
于是我调整学习方案,打算从基础学习,Java基础语法我以前在学校学过,但是由于长时间没用只记得部分,因此,就专门把不会的记下来,加深记忆吧!
今天学到一个新知识点:构造器
- 构造器的概念:
构造器就是和类名相同但无返回类型的方法,用于当前或某一对象的实例化。
- 构造器的特点:
1.方法名和类名相等.
2.没有返回值,并且不能用void(如果用void来声明其返回值类型,那么java会把这个构造器当做方法来处理——那它不再是构造器).
3.构造器中的参数列表中的参数可有可无.
主要是两同一不同.
2同:构造器与当前类的类名相同,构造器返回类型相同(没有返回值).
1不同:方法的参数不同.
构造器总是伴随着new操作一起调用
- 构造器的用途:
构造器最大的用处就是在创建对象时执行初始化,当创建一个对象时,系统会为这个对象的实例进行默认的初始化。如果想改变这种默认的初始化,就可以通过自定义构造器来实现。
用我的理解说说就是(可能并不准确哦~)–> 一个可以用来自定义初始化对象格式的东东
- 构造器的分类:
有参构造器和无参构造器,顾名思义,参是参数的意思。
举例说明:
以下代码是创建有参构造器:
public class Employee{
String name;
// Employee 类的构造器
public Employee(String name){
this.name = name;
}
}
使用构造器:
public class EmployeeTest{
public static void main(String[] args){
/* 使用构造器创建两个员工对象 */
Employee empOne = new Employee("Casy1");
Employee empTwo = new Employee("Casy2");
}
}
无参构造器的创建:
class Person{
public Person( ){
System.out.println("无参构造器被调用");
}
}
无参构造器的使用:
public class PersonTest{
public static void main (String [] args ){
Person p=new Person();//实例化Person对象
}
}
默认都是无参构造器,因此我们通常看到直接new的,都是因为调用了无参构造器。
- 两者的关系:
如果编写一个java程序时没有添加无参构造方法,那么编译器会 自动添加无参构造方法;
但是如果编写时添加了有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法
所以,如果需要使用无参构造方法,一定要在类里面添加.
文末比喻式总结:
假设对象是碗拉面,无参构造就是默认面种,默认调料,做出来的面就是默认的
使用了参数的构造器,就是给做面时指定面种,加辣不加辣,出来就是这样的拉面
默认做出来的面不符合就可以调加调料的方法加辣。
构造器的学习笔记就到这里啦,继续加油吧!