[TOC]
## **一、構造方法的特點**
(1)每當創建給定類的實例時就調用的方法
(2)與類同名,但沒有返回類型
(3)Java 為對象分配內存,初始化實例變量并調用構造方法
(4)兩種構造方法
1、參數化構造方法
2、隱式構造方法
## **二、示例解析**
```
public class day05_function5{
public static void main(String [] args){
Student stu;
stu = new Student();//調用構造方法
}
}
```
在構造對象時,就會自動調用構造方法。也許你會問,我們并沒有定義構造方法,為什么會自動調用構造方法呢,這就是因為每一個類,只要你沒有顯示的定義構造方法,那么它都會有一個隱式構造方法。
<br>
## 默認構造方法
**如果沒有任何的構造方法,編譯時系統會自動添加一個默認無參構造方法**
1. 隱含的默認構造方法
```
public A(){}
```
2. 顯示的默認構造方法
~~~
public A(){
System.out.print("顯示的默認構造方法")
}
~~~
## **構造方法實例**
```
public class day05_function5 {
public static void main(String[] args) {
PersonDemo s = new PersonDemo("國王",23); //new對象時,即調用對應的構造函數,并傳值。同時,不能new同一個對象多次,否則會報錯。
s.setName("迪迦"); //對象建立后,想變更值時,就要用set/get方法,重新設置新的值
s.setName("賽文"); //并可調用對象多次。
s.print();
}
}
class PersonDemo{
private String name;
private int age;
PersonDemo(String n,int m){ //建立有參構造函數,用于給兩個private變量name、age賦值,同時輸出值
name=n;
age=m;
System.out.println("姓名:"+name+"\n"+"年齡:"+age);
}
public void setName(String x){ //set方法,用于再次給name賦值
name=x;
}
public String getName(){ //get方法,用于獲取name的賦值
return name;
}
public void print(){
System.out.println(name);
}
}
```
- Java自動化測試
- 第一章:Java:基礎內容
- 1.1:Java:Hello Word
- 1.2:Java:熱身
- 1.3:Java:注釋
- 1.4:Java:標識符
- 1.5:Java:常量
- 1.6:Java:基本數據類型
- 1.7:Java:引用類型
- 1.8:Java:String類
- 第二章:Java:運算符
- 2.1:Java:算數運算符
- 2.2:Java:關系運算符
- 2.3:Java:邏輯運算
- 2.4:Java:賦值運算符
- 2.5;Java:三元運算符
- 2.6:Java:位運算符
- 第三章:Java:循環控制語句
- 3.1:Java:for循環
- 3.2:Java:while循環
- 3.3:Java:switch
- 3.4:Java:if else
- 3.5:Java:練習題
- 第四章:Java:函數與全局/局部變量
- 4.1:Java:局部變量
- 4.2:Java:全局變量
- 第五章:Java:方法
- 5.1:Java:初識方法
- 5.2:Java:方法調用
- 5.3:Java:方法重載
- 5.4:Java:構造方法
- 5.5:Java:方法的注意事項
- 第六章:Java:面向對象
- 6.1:Java:小案例
- 6.2:Java:this 關鍵字
- 6.3:Java:super 關鍵字
- 6.4:Java:static 關鍵字
- 6.5:Java:final關鍵字
- 6.6:Java:instanceof 運算符
- 6.7:Java:面向對象之封裝
- 6.8:Java:面向對象之繼承
- 6.9:Java:面向對象之多態
- 第七章:Java:面向對象高級進階
- 7.1:Java:抽象類
- 7.2:Java:Java中String類
- 7.3:Java:interface接口
- 7.4:Java:ArrayList
- 7.5:Java:HashSet
- 7.6:Java:HashMap
- 7.7:Java:反射(reflection)
- 第八章:Java:日志以及異常捕獲
- 8.1:Java:log4j
- 8.2:Java:異常初識基礎
- 8.3:Java:未被捕獲的異常
- 8.4:Java:try和catch的使用
- 8.5:Java:多重catch語句的使用
- 8.6:Java:throws/throw 關鍵字
- 8.7:Java:finally關鍵字
- 8.8:Java:自定義異常
- 第九章:Java:xml and IO
- 9.1:Java:IO基本概念
- 9.2:java:properties
- 9.3:Java:xml基本介紹
- 9.4:Java:xml操作實例
- 第十章:Java:JDBC編程
- 10.1:Java:JDBC介紹
- 10.2:Java:JDBC查詢
- 10.3:Java:JDBC插入
- 10.4:Java:Batch
- 10.5:Java:JDBC連接池
- 第十一章:Java:TestNG
- 11.1:java:TestNG簡介
- 11.2:Java:TestNG小實例
- 11.3:Java:TestNG.xml文件配置
- 11.4:Java:TestNG基本注解
- 11.5:Java:TestNG注解代碼
- 11.6:Java:TestNG預期異常
- 11.7:Java:TestNG忽略測試
- 11.8:Java:TestNG超時測試
- 11.9:Java:TestNG分組測試