java构造器详解

java构造器详解

我们在使用new关键字实例化对象时,本质是在调用构造器。一个类即使什么都不写,它也会有一个方法。举例如下:
我们先定义一个类:

public class Person {}

然后再实例化如下:

public class application {
    public static void main(String[] args) {
            Person person=new Person();
               }
}

我们发现,虽然Person类中什么都没写,但是依然能够实例化Person,说明Person类中存在一个默认的方法。
java文件在编译之后会自动生成一个class文件,在项目文件夹下的out文件夹内,打开名为Person的class文件,代码如下:

public class Person {
    public Person() {
    }
}

由此说明,一个类即使什么都不写,它也会存在一个构造方法。

类中的构造器也被称之为构造方法,是创建对象时必须要调用的。构造器具有以下两个特点:

  1. 必须和类的名字相同;
  2. 必须没有返回值类型,也不能写成void。

我们也可以在类中显式地定义构造方法,还是以Person类为例,构造器一个很重要的作用是实例化对象时赋予初始值,分为无参构造和有参构造:

  1. 无参构造:构造方法中不带参数
public class Person {
    String name;
    public Person(){
        this.name="zxn";
    }
}
  1. 有参构造:构造方法带参数
public class Person {
    String name;
    public Person(String name){
        this.name=name;
    }
}

其中this.name代表对象本身的name属性值。
对于有参构造,应该这样调用(实例化):

public class application {
    public static void main(String[] args) {
            Person person=new Person("zxn");
    }
}

我们看到,对于有参构造,实例化对象时需要给对象传入初值。
构造器的两个主要作用:

  1. 使用new关键字,本质是在调用构造器;
  2. 用来初始化值。

IDEA中显式定义构造器快捷键:Alt+Insert,选Constructor,按住Ctrl可以选定多个想要初始化的参数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值