构造方法:
    构造方法是类中的一个特殊成员,它会在类实例化的时候被调用。分为有参构造和无参构造。每个类默认有一个无参构造方法,构造方法除了在实例化对象的时候会被调用之外,还可以实现对类中的属性赋值。
构造方法的定义:

定义构造方法必须满足三个条件
1、方法名和和类名相同。
2、在方法前面没有返回值类型的声明。
3、在方法中不能使用return语句返回一个值。

实例:

//定义一个Student类
public class Student {
    //定义一个无参构造方法
    public Student() {
        System.out.println("无参构造方法被调用了.......");
    }

    public static void main(String[] args) {
        //实例化一个对象
        Student student = new Student();
    }
}
运行结果:

java如何定义一个结构体数组 java定义一个构造方法_java


从运行结果看出实例化student对象时该类的无参构造方法被调用了。

实例(有参构造):

//定义一个Dog类
public class Dog {
    String dogName;
    String color;
    //定义一个有参构造方法,为成员属性赋值
    public Dog(String dogName, String color) {
        this.dogName = dogName;//为douName赋值
        this.color = color;//为color赋值
    }
    public void shouTime(){
        System.out.println(dogName + " " + color);
    }
    public static void main(String[] args) {
        //实例化Dog对象
        Dog dog = new Dog("金毛","黄色");
        dog.shouTime();
    }
}

运行结果:

java如何定义一个结构体数组 java定义一个构造方法_java_02


构造方法的重载:

   与普通方法一样,构造方法也可以重载,在一个类中定义多个构造方法,只要构造方法的参数类型和参数个数不同即可。这样我们可以通过不同的构造方法为不同的属性赋值。

实例:

//定义一个Dog类
public class Dog {
    String dogName;
    String color;
    //定义一个参数的构造方法
    public Dog(String dogName) {
        this.dogName = dogName;
    }
    //定义两个参数的构造方法
    public Dog(String dogName, String color) {
        this.dogName = dogName;//为douName赋值
        this.color = color;//为color赋值
    }
    public void shouTime(){
        System.out.println(dogName + " " + color);
    }
    public static void main(String[] args) {
        //分别实例化d1和d2两个对象
        Dog d1 = new Dog("哈士奇", "黑白");
        d1.shouTime();
        Dog d2 = new Dog("哈士奇");
        d2.shouTime();
    }
}

运行结果:

java如何定义一个结构体数组 java定义一个构造方法_实例化_03


从运行结果可以看出来,根据传入参数的不同,分别调用了不同的参数。

加油吧!!!