构造方法

构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式:
public 类名称(参数类型 参数名称){
方法体
}
注意事项

  • 构造方法的名称必须和所在的类名称完全一样,就连大小写也要一样
  • 构造方法不要写返回值类型,连void都不写
  • 构造方法不能return一个具体的返回值
  • 如果没有编写任何构造方法,那么编译器将会默认赠送一个构造方法,没有参数、方法体什么事情都不做
    public Student(){}
  • 一旦编写了至少一个构造方法,那么编译器将不再赠送
  • 构造方法也是可以进行重载的
    重载:方法名称相同,参数列表不同

Student.java

package cn.day02;

public class Student {
    //成员变量
    private String name;
    private int age;
    //无参数的构造方法
    public Student() {
        System.out.println("无参构造方法用来创建对象");
    }

    //全参数的构造方法
    public Student(String name, int age) {
        System.out.println("全参构造方法用来创建对象");
        this.name = name;
        this.age = age;
    }
    //Getter/Setter
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getAge() {
        return age;
    }
}

DemoStudent.java

package cn.day02;

public class DemoStudent {
    public static void main(String[] args) {
        Student stu1 = new Student();//new 对象(),就是在调用构造方法//无参构造
        System.out.println("==============================");
        Student stu2 = new Student("赵丽颖", 20);//全参构造
        System.out.println("姓名: " + stu2.getName() + "年龄" + stu2.getAge());
        //如果需要改变对象当中成员变量数据内容,仍然要使用setXxx方法
        stu2.setAge(21);//改变内容
        System.out.println("姓名: " + stu2.getName() + "年龄" + stu2.getAge());

    }
}

Running results:

无参构造方法用来创建对象
==============================
全参构造方法用来创建对象
姓名: 赵丽颖年龄20
姓名: 赵丽颖年龄21
上一篇:新智元文章“两位图灵奖得主万字长文:新计算机架构,黄金十年爆发!”读后感


下一篇:定义一个标准的类