构造方法的注意事项
- 构造方法的创建
如果没有定义构造方法,系统将给出一个默认的无参数构造方法
如果定义了构造方法,系统将不再提供默认的构造方法 - 构造方法的重载
如果自定义了带参构造方法,还要使用无参数构造方法,那就必须再写一个无参数构造方法
推荐方式: 无论是否使用,都手工书写无参数构造方法
package ont_one_three;
public class Student {
private String name;
private int age;
public Student(){
System.out.println("无参的构造方法");
}
public Student(String name){
this.name = name;
}
public Student(int age){
this.age = age;
}
public Student(String name,int age){
this.name = name;
this.age = age;
}
public void show(){
System.out.println(name + "," + age);
}
}
-======================================================================
package ont_one_three;
import javax.xml.namespace.QName;
import java.awt.print.Pageable;
//测试类
public class StudentDemo {
public static void main(String[] args) {
Student p1 = new Student();
p1.show();
Student p2 = new Student("临清子啊");
p2.show();
Student p3 = new Student(20);
p3.show();
Student p4 = new Student("林青霞",20);
p4.show();
}
}
构造方法====标准类制作
-
成员变量
使用private修饰 -
构造方法
提供一个无参构造方法
提供一个带多个参数的构造方法 -
成员方法
提供每一个成员变量对应的setXxx()/getXxx()
提供一个显示对象信息的show() -
创建对象并为其成员变量赋值的两种方式
无参构造方法创建对象后使用setXxx()赋值
使用带参构造方法直接创建带有属性值的对象
package ont.one_four;
public class Student {
private String name;
private int age;
//构造方法
public Student(){}
public Student(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;
}
public void show(){
System.out.println(name +","+age);
}
}
=============================================================
package ont.one_four;
public class StudentDemo {
public static void main(String[] args) {
Student s1 = new Student();
s1.setName("林青霞");
s1.setAge(30);
s1.show();
Student s2 = new Student("林青霞",30);
s2.show();
}
}