Java学习笔记10(面对对象:构造方法)

在开发中经常需要在创建初始化对象时候明确对象的属性值,

比如Person对象创建的时候就给Person的属性name,age赋值,

这里就要用到构造方法:

构造方法是类的一种特殊方法,它的特殊性体现在:

  1.构造方法的方法名与类名相同。

  2.构造方法是类的方法,它能够简化对象数据成员的初始化操作。

  3.不能对构造方法指定返回值类型,它有隐含的返回值,该值由系统内部使用

  4.构造方法一般不能由编程人员显式的直接调用,在创建一个类的对象的同时,系统会自动调用该类的构造方法将新的对象初始化。

  5.构造方法可以重载,即可以定义多个具有不同参数的构造方法。

  6.构造方法可以继承,即子类可以继承父类的构造方法。

  7.如果用户在一个自定义类种未定义该类的构造方法,系统将为这个类定义一个缺省的空构造方法。

public class Person {
    private String name;
    private int age;
    public Person() {//定义空参构造方法
        super();//自动继承父类方法,写或不写都会有
    }
    public Person(String name, int age) {//定义带参构造方法,可以在初始化对象时候直接赋值
        this.name = name;
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {//自动生成转字符串方法,方便输出观察值
        return "Person [name=" + name + ", age=" + age + "]";
    }
}
public class Test {
    public static void main(String[] args) {
        Person p1=new Person();//调用空参构造方法,创建对象,并为该对象的属性值逐个赋值
        p1.setAge(18);
        p1.setName("张三");
        System.out.println(p1);
        /*当我们需要创建多个对象时,逐个赋值,效率太低;所以出现了带参构造方法,
        通过带参构造方法,我们可以在创建初始化对象的同时直接赋值,简化了代码*/
        Person p=new Person("张三", 18);
        System.out.println(p);
    }
}
原文地址:https://www.cnblogs.com/Zs-book1/p/10552124.html