构造器
- 一、构造器基本概念:
- 1.构造器的作用
- 2.构造器声明语法格式
- 3. 构造器的分类
- 注意事项
- 二、构造器的重载
- 三、属性赋值的先后顺序
- 四、JavaBean。
- 五、拓展知识:UML类图
一、构造器基本概念:
1.构造器的作用
- 创建对象
- 初始化对象的信息
2.构造器声明语法格式
语法格式 :
权限修饰符 类名 (参数列表) {
初始化语句 }
3. 构造器的分类
(根据参数不同)两类:
1.隐式无参构造器(系统默认提供)
2.显式定义一个或多个参数的带参构造器
特征:
① 它具有与类相同的名称
② 它不声明返回值类型(与声明为void不同)。
③ 不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值
注意事项
- Java语言中,每个类都至少有一个构造器;如果没有显式的定义类的构造器的话,则系统默认提供一个空参的构造器;
默认构造器的修饰符与所属类的修饰符一致。一旦显式定义了类的构造器,则系统不再提供默认(空参)构造器 - 一个类中定义的多个构造器,彼此构成重载(一个类可以创建多个重载的构造器)
- 父类的构造器不能被子类继承
二、构造器的重载
- 构造器一般用来创建对象的同时初始化对象。
class Person{
String name;
int age;
public Person(String n , int a){ name=n; age=a;}
} - 构造器重载使得对象的创建更加灵活,方便创建各种不同的对象。
- 构造器重载,参数列表必须不同。
三、属性赋值的先后顺序
① 默认初始化
② 显式初始化(多个初始化块依次被执行(同级别下按先后顺序执行)) / ⑤ 代码块中赋值
③ 构造器中初始化
④ 通过"对象.方法" 或 "对象.属性"的方式,赋值
以上操作的先后顺序:① - ② / ⑤ - ③ - ④
四、JavaBean。
定义:JavaBean是一种Java语言写成的可重用组件。
特征:指符合如下标准的Java类:
① 类是公共的 public
② 有一个无参的公共的构造器
③ 有属性,且有对应的get、set方法
作用:用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,
并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。
五、拓展知识:UML类图
- 表示 public 类型, - 表示 private 类型,#表示protected类型
- 类名; 属性:“:”前是属性名,“:”后是属性的类型; 方法。
- 方法的写法: 方法的类型(+、-) 方法名(参数名: 参数类型):返回值类型
注意:若方法有下划线表示为构造器
代码展示
。
// 构造器的讲解及测试
class PersonTest {
public static void main(String[] args) {
//创建类的对象:new + 构造器
Person p = new Person();
p.eat();
Person p1 = new Person("Tom");
System.out.println(p1.name);
}
}
class Person{
//属性
String name;
int age;
//构造器
public Person(){
System.out.println("Person().....");
}
public Person(String n){
name = n;
}
//
public Person(String n,int a){
name = n;
age = a;
}
//方法
public void eat(){
System.out.println("人吃饭");
}
public void study(){
System.out.println("人可以学习");
}
}
//JavaBean是一种Java语言写成的可重用组件。测试
class Order3 {
private int id;
private String name;
public Order3() {
}
public void setId(int i) {
id = i;
}
public int getId() {
return id;
}
public void setName(String n) {
name = n;
}
public String getName() {
return name;
}
}