面向对象(构造方法)

构造方法Constructor概述和格式

构造方法的概述和作用

  • 给对象的数据(属性)进行初始化

构造方法格式特点

  • 方法名和类名相同(大小也要与类名一致)
  • 没有返回值类型,连void都没有
  • 没有具体的返回值return

构造方法不能用对象调用,在一创建对象的时候,系统就帮我们调用了构造方法。

构造方法也是有return语句的,格式 return;

public class test01 {
    public static void main(String[] args) {
        
        Person person = new Person();
        person.show();
        
    }
}


class Person{
    private String name;
    private int age;
    
    //构造方法
    public Person() {
//        System.out.println("hello");
//        return;
        name = "zhangshan";
        age = 23;
    }
    public void show() {
        System.out.println(name + "..." + age);
    }
}

案例演示

  • 构造方法与重载
  • 重载:方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表

构造方法注意事项

  • 如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
  • 如果我们给出了构造方法,系统将不再提供默认的无参构造方法。

注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法。

public class test02 {
    public static void main(String[] args) {
        Person p1 = new Person();
        p1.show();
        
        System.out.println("---------");
        
        Person p2 = new Person("zhangsan",23);
        p2.show();
    }
    

}
class Person{
    private String name;
    private int age;
    
    //空参构造
    public Person() { 
        System.out.println("kongcan");
    }
    //有参构造
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
        System.out.println("youcan");
    }
    public void show() {
        System.out.println(name + "..." + age);
    }
}

猜你喜欢

转载自www.cnblogs.com/happystudyhuan/p/10703176.html