轉(zhuǎn)發(fā)請(qǐng)注明出處:
安卓猴的博客(http://sunjiajia.com)
本節(jié)課程將學(xué)習(xí)以下內(nèi)容:
- 函數(shù)的重載
- 構(gòu)造函數(shù)的作用
函數(shù)的重載
在同一個(gè)類中允許函數(shù)的重名這種現(xiàn)象的出現(xiàn)匿垄,它有3個(gè)特征:
- 兩個(gè)或者多個(gè)函數(shù)在同一個(gè)類當(dāng)中奏篙;
- 函數(shù)名相同;
- 參數(shù)列表不同忿危。
例子:(請(qǐng)動(dòng)手)
1.新建一個(gè)名稱為Demo01.java的java源文件博助。
class Demo01 {
void funDemo01() {
System.out.println("沒(méi)有參數(shù)的funDemo01函數(shù)");
}
// 這個(gè)funDemo01函數(shù)重載了上面的funDemo01函數(shù)麻削,特點(diǎn)為:
// 1. 兩個(gè)funDemo01函數(shù)處于同一個(gè)類Demo01當(dāng)中娇跟;
// 2. 函數(shù)名相同萍悴,都為funDemo01头遭;
// 3. 參數(shù)不同,第2個(gè)funDemo01函數(shù)有了一個(gè)整型參數(shù)i癣诱。
void funDemo01(int i) {
System.out.println("有參數(shù)i的funDemo01函數(shù)计维,i的值是" + i);
}
}
- 新建一個(gè)名稱為Demo02.java的java源文件。
Demo02類演示了重載方法的調(diào)用撕予。
class Demo02 {
public static void main(String[] args) {
Demo01 demo01 = new Demo01();
demo01.funDemo01();
demo01.funDemo01(100);
}
}
構(gòu)造函數(shù)的作用
用來(lái)在創(chuàng)建對(duì)象時(shí)初始化對(duì)象鲫惶, 即為對(duì)象成員變量賦初始值,總與new運(yùn)算符一起使用在創(chuàng)建對(duì)象的語(yǔ)句中实抡;
一個(gè)類可以有多個(gè)構(gòu)造函數(shù) 欠母,可根據(jù)其參數(shù)個(gè)數(shù)的不同或參數(shù)類型的不同來(lái)區(qū)分它們,即構(gòu)造函數(shù)的重載吆寨。
特征:
- 沒(méi)有返回值類型的定義赏淌;
- 構(gòu)造函數(shù)的名字必須和類的名字完全保持相同;
例子:(請(qǐng)動(dòng)手)
- 新建一個(gè)名稱為Person.java的java源文件啄清。
class Person {
// 構(gòu)造函數(shù)
Person(){
}
// 第二個(gè)構(gòu)造函數(shù)猜敢,利用的原理是方法的重載
Person(String n, int a){
name = n;
age = a;
}
String name;
int age;
}
- 新建一個(gè)名稱為Demo03.java的java源文件。
class Demo03 {
public static void main(String[] args) {
// 調(diào)用的是無(wú)參的構(gòu)造方法
Person p1 = new Person();
p1.name = "zhang3";
p1.age = 15;
System.out.println("p1的name是:" + p1.name + "盒延,age是:" + p1.age);
// 調(diào)用的是有參的構(gòu)造方法缩擂,哪個(gè)寫(xiě)法更加簡(jiǎn)單呢?
Person p2 = new Person("li4", 18);
System.out.println("p12的name是:" + p2.name + "添寺,age是:" + p2.age);
}
}