java学习日记_22:面向对象之构造方法。07.11—12;

来源:互联网 发布:逛淘宝 编辑:程序博客网 时间:2024/04/28 23:02

  构造方法:对数据进行初始化;

格式:
1,方法名与类名相同


2,没有返回值类型,没有void类型;


3,没有具体的返回值;

例题;

class Student{

//建立构造方法

public Student(){

System.out.println("这是构造方法");

}

}

class StudentDamo{

Student s= new Student();//Student()就是一个构造方法,作用是对类的成员变量初始化

System.out.println(s);//s为地址值

}

思考:我们在使用new student();是,没有给出构造方法,那我们为什么能直接使用呢?

 方法重构的注意事项:

1,在自己没有建立构造方法时,系统会给出一个默认的无参构造方法,

2,在自己已经建立构造方法时,系统就不会给出默认的无参构造方法,

在自己已经建立构造方法后,我们还想使用无参构造方法时,我们得自己给出,系统是不提供的,

给成员变量赋值的方法:

1,setXxx();
2,使用构造方法

构造方法的方法重构:





class Student {
private String name;
private int age;


public Student() {
//System.out.println("我给了,你还给不");
System.out.println("这是无参构造方法");
}

//构造方法的重载格式
public Student(String name) {
System.out.println("这是带一个String类型的构造方法");
this.name = name;
}

public Student(int age) {
System.out.println("这是带一个int类型的构造方法");
this.age = age;
}

public Student(String name,int age) {
System.out.println("这是一个带多个参数的构造方法");
this.name = name;
this.age = age;
}

public void show() {
System.out.println(name+"---"+age);
}
}


class ConstructDemo2 {
public static void main(String[] args) {
//创建对象
Student s = new Student();
s.show();
System.out.println("-------------");

//创建对象2
Student s2 = new Student("林青霞");
s2.show();
System.out.println("-------------");

//创建对象3
Student s3 = new Student(27);
s3.show();
System.out.println("-------------");

//创建对象4
Student s4 = new Student("林青霞",27);
s4.show();
}
}


0 0
原创粉丝点击