相信大家经过前几课的学习,应该看过下面一行代码好多遍了

Demo demo = new Demo();

 

不知道大家想过一个问题没有,为什么new Demo()里这个Demo后面要加上括号?

一般来讲只有某些关键字和方法后面才会跟括号,这个Demo显然不是关键字,那它是否对应着某个方法呢?

 

答案是是的。Demo()确实是一个方法,而且是一个非常特殊的方法,这种方法在c++里被称为构造函数,而在java里则被叫做构造器

 

构造器:

       方法名与类名相同

       可以带参数

       没有返回值(就是没有,不是void,返回值为void的话可以return null,构造器没有返回值)

 

构造器作用:
       只能被new显式调用,用来构造一个对象并进行初始化操作

 

Demo:

 

public class Demo {
    public int a;

    public Demo(int a)
    {
        this.a = a;
    }

    public static void main(String[] args) {
        Demo demo = new Demo(1);
        System.out.println(demo.a);
    }
}

 

运行结果:

1

 

面向对象(四)——构造器_Java