1、构造方法

构造方法的概述
  • 构造方法是一种特殊的方法,主要是完成对象的创建对象数据的初始化
构造方法的定义
  • 格式
// 空参构造方法
修饰符 类名(){
    
}

// 有参构造方法
修饰符 类名(参数列表){
	// 方法体
}
  • 特点:
  • 构造方法的写法上,方法名与它所在的类名相同
  • 构造方法没有返回值,所以不需要返回值类型,甚至不需要void
  • 示例代码:
public class Student {
    /**
     * 姓名
     */
    private String name;
    /**
     * 年龄
     */
    private int age;

    // 构造方法
    public Student(){
        System.out.println("空参方法");
    }

    public Student(String name,int age){
         = name;
        this.age = age;
        System.out.println("有参方法");
    }

    public String getName(){
        return name;
    }

    public int getAge(){
        return age;
    }
}

public class Test {
    public static void main(String[] args) {
        
        // 通过调用空参构造方法创建对象
        Student stu1 = new Student();
        System.out.println(stu1.getName()+","+stu1.getAge());// null,0

        // 通过调用有参构造方法创建对象
        Student stu2 = new Student("冰冰",18);
        System.out.println(stu2.getName()+","+stu2.getAge());// 冰冰,18

    }
}

小结

构造方法的概述
        - 构造方法是一种特殊的方法,主要是完成对象的创建和对象属性的初始化

 构造方法的定义
        - 格式:
            空参构造方法
                修饰符 类名(){

                }

            有参构造方法
                修饰符 类名(参数){
                    方法体(给属性赋值)
                }
        - 特点:
            1.构造方法的方法名和类名一致
            2.构造没有返回值,连void都没有
            
  调用构造方法: 通过new来调用

2 、构造方法的注意事项

  • 构造方法的创建
  • 如果没有定义构造方法,系统将给出一个默认的无参数构造方法
  • 如果定义了构造方法,系统将不再提供默认的构造方法
  • 构造方法可以重载,既可以定义参数,也可以不定义参数。
  • 示例代码
public class Student {
    /**
     * 姓名
     */
    private String name;
    /**
     * age
     */
    private int age;

    // 空参构造方法
    public Student(){

    }
    // 有参构造方法(满参构造方法)
    public Student(String name,int age){
         = name;
        this.age = age;
    }

    // 有参构造方法
    public Student(String name){
         = name;
    }

    // 有参构造方法
    public Student(int age){
        this.age = age;
    }

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

    public int getAge(){
        return age;
    }
}

public class Test {
    public static void main(String[] args) {
        
         //调用空参构造方法创建对象
        Student stu1 = new Student();

        // 通过有参构造方法创建对象
        Student stu2 = new Student("冰冰",18);

        System.out.println(stu2.getAge());// 18
        // 通过set方法给属性赋值
        stu2.setAge(19);
        System.out.println(stu2.getAge());// 19
    }
}

小结

构造方法的注意事项:
    - 构造方法的创建
      - 如果没有定义构造方法,系统将给出一个默认的无参数构造方法
      - 如果定义了构造方法,系统将不再提供默认的构造方法
	- 构造方法只能给属性赋值一次,不能重复赋值,可以由set方法给属性重复赋值
    - 构造方法可以重载,既可以定义参数,也可以不定义参数。
    - 定义构造方法的时候,不要写返回值,连void都不能有
    - 定义构造方法的时候,构造方法名和类名一定要一致