构造函数

构造函数是一种特殊的函数,又称为构造方法/构造器/Constructor,函数名与所在的类名相同,注意构造函数没有返回值。

构造函数的主要作用是在创建对象时,初始化成员变量。

那怎么在类中创建构造函数呢?首先回顾一下在Java中创建一个普通方法的语法:

方法的访问权限 返回值 方法名(参数) {

    语句体;

}

方法的返回权限有常见的public、protected和private或者不写,前三者的区别可用下表来总结

访问权限 Public Protected Private
同一个类
派生类
外部的类

派生类是指从父类继承得到的类。

更具体的:

  • public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用

  • private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。

  • protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。

方法的返回值可以是void,即方法不用返回任何东西,也可是其他想要返回的类型。

方法名按照命名规则书写。

回顾完创建普通方法的语法后,我们接下来看一下怎么去创建一个构造方法。为了理解方便,首先来看一段代码

public class Human {
    String name;
    public Human(String name) {
        this.name=name;
    }
    public Human(){

    }
    void walk(){
        System.out.println(name+"散步");
    }
}

在上面这段代码中,我们可以看到有一个方法的名字为Human,与类名相同,这个方法其实就是构造方法,注意到Human方法中传入了一个参数name,这个name参数其实就是我们新建一个对象时需要传入的参数,有了这个参数后,通过关键字this,就可以将类中的name修改为我们传入的name了。

例如我们现在要创建一个Human对象,name为Judy,则代码可以写为

Human() Judy = new Human("Judy");
System.out.println(Judy.name);

输出结果为Judy。

其实每一个类中都有一个构造方法,当我们没有在类中写出这个构造方法时,编译器会自动为这个类创建一个构造方法:

public 类名(){

}

利用构造方法我们就可以去创建一个初始参数为我们想要的对象了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容