一、类的构造方法的概念和作用
- 构造方法负责对象初始化工作,对对象的属性赋合适的初始值
- 创建对象时,其类的构造方法确保在用户操作对象之前,系统保证初始化的进行
二、构造方法的语法规则
- 构造方法名与类名一致
- 没有返回类型
- 方式实现主要为字段赋初值
三、构造方法的调用
- 构造方法的调用很特别:new操作符(实例化对象的时候,自动被调用)
- java系统保证每个类都有构造方法
四、UML类图
- Unified Modeling Language(UML)又称统一建模语言或标准建模语言
- 类的命令尽量应用领域中的术语
- 应明确、无歧义,以利于相互交流和理解
- 类的属性、操作中的可见性使用+、#、-分别表示public、protected、private
- 该图表示一个叫做Person的类,该类有name、age、sex三个private属性,每个属性的类型紧跟在冒号的后面。该类有walk和speak两个方法,其中walk方法是public的,而speak方法是protected的,两个方法的返回值类型紧跟在冒号的后面。
五、DEMO
class Student
{
private int age;
String name;
double score;
Student(){ //java语言中,方法是可重载的 函数名一样,参数列表不同,在C中是不允许的
System.out.println("构造方法一被调用");
}
Student(int newage, String newname){
System.out.println("构造方法二被调用");
age = newage;
name = newname;
}
Student(int newage, String newname, double newscore){
System.out.println("构造方法三被调用");
age = newage;
name = newname;
score = newscore;
}
void introdure(){
System.out.println("name=" + name + ",age=" + age + ",score=" + score);
}
}
public class Demo2 {
public static void main(String[] args) {
Student stu1 = new Student(18, "xiaoma", 98.5);
stu1.introdure();
Student stu2 = new Student();
Student stu3 = new Student(18, "xiaoma");
}
}
构造方法三被调用
name=xiaoma,age=18,score=98.5
构造方法一被调用
构造方法二被调用