构造方法
作用:
- 当一个对象被创建时候,构造方法用来初始化该对象,
- 或给对象的成员变量赋初始值。
构造方法的定义格式:
注意事项:
- 构造方法的名称必须和所在的类名称完全一样,就连大小写也要一样
- 构造方法不要写返回值类型,连void都不写
- 构造方法不能return一个具体的返回值
- 如果没有编写任何构造方法,那么编译器将会默认赠送一个构造方法,没有参数、方法体什么事情都不做。
- 一旦编写了至少一个构造方法,那么编译器将不再赠送。
- 构造方法也是可以进行重载的。重载:方法名称相同,参数列表不同。
需求:
举例说明构造方法的常见用法
代码举例
定义student类
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; } }
使用Student类
package demo04; public class Demo02Student { public static void main(String[] args) { Student stu1 = new Student(); // 无参构造 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()); } }
执行结果