一、类的构造方法的概念和作用

  • 构造方法负责对象初始化工作,对对象的属性赋合适的初始值
  • 创建对象时,其类的构造方法确保在用户操作对象之前,系统保证初始化的进行

二、构造方法的语法规则

  • 构造方法名与类名一致
  • 没有返回类型
  • 方式实现主要为字段赋初值

三、构造方法的调用

  • 构造方法的调用很特别: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
构造方法一被调用
构造方法二被调用