内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

Java學(xué)習(xí)-面向?qū)ο?中)-創(chuàng)新互聯(lián)

Java學(xué)習(xí)-面向?qū)ο?中) 封裝

高內(nèi)聚低耦合,信息隱藏,屬性私有
private,set()、get()

創(chuàng)新互聯(lián)專業(yè)IDC數(shù)據(jù)服務(wù)器托管提供商,專業(yè)提供成都服務(wù)器托管,服務(wù)器租用,成都服務(wù)器托管,成都服務(wù)器托管,成都多線服務(wù)器托管等服務(wù)器托管服務(wù)。
public class Student{private int age;
	public int getAge(){return this.age;}
	public void setAge(int age){if(age<120 && age>0){this.age=age;}else{	System.out.println("輸入不合法");
		}
	}
}
public class Demo{public static void main(String[] args){Student s = new Student();
		s.setAge(-10);//輸入不合法
	}
}

封裝作用
1.保護數(shù)據(jù),提升程序安全性
2.隱藏代碼實現(xiàn)細節(jié)
3.統(tǒng)一接口
4.提高系統(tǒng)可維護性

繼承

extends,類之間的關(guān)系,除了繼承還有依賴、組合、聚合等

public class Person{public void say(){System.out.println("say something.");}
}
public class Student entends Person{}
public class Demo{public static void main(String[] args){Student s = new Student();
		s.say();//say something.
	}
}

子類擁有父類的全部方法
Object類:在Java中,所有的類都默認繼承Object類
Java只有單繼承,沒有多繼承

super
public class Person{protected String name = "a";
	public Person(){System.out.println("Person無參構(gòu)造");}
	public void print(){System.out.println(Person);}
}
public class Student entends Person{private String name = "b";
	public Student(){System.out.println("Student無參構(gòu)造");}
	public void print(){System.out.println(Student);}
	public void test1(String name){System.out.println(name);
		System.out.println(this.name);
		System.out.println(super.name);
	}
	public void test2(){print();this.print();super.print();}
}
public class Demo{public static void main(String[] args){Student s = new Student();//Person無參構(gòu)造 \n Student無參構(gòu)造
		s.test1("c");//c \n b \n a
		s.test2();//Student \n Student \n Person
	}
}

super注意:
1.子類使用super調(diào)用父類的構(gòu)造方法,必須在構(gòu)造方法的第一個
2.super必須只能出現(xiàn)在子類的方法或構(gòu)造方法中
3.super和this不能同時調(diào)用構(gòu)造方法
super VS this:
代表對象不同:this調(diào)用者對象,super父類對象
前提不同:this沒有繼承也可以使用,super只能在繼承條件下才可以使用
構(gòu)造方法:this調(diào)用本類構(gòu)造,super調(diào)用父類構(gòu)造

重寫

靜態(tài)方法:靜態(tài)方法是類的方法,p調(diào)用父類Person的方法,實例化的子類對象向上轉(zhuǎn)型為父類對象

public class Person{public static void test(){sout("Person.test()");}
}
public class Student extends Person{public static void test(){sout("Student.test()");}
}
public class Demo{public static void main(String[] args){Student s = new Student();
		s.test();//Student.test()
		Person p = new Student();
		p.test();//Person.test()
	}
}

非靜態(tài)方法:非靜態(tài)方法是對象的方法,在子類實例化時重寫了父類的方法

public class Person{public void test(){sout("Person.test()");}
}
public class Student extends Person{public void test(){sout("Student.test()");}
}
public class Demo{public static void main(String[] args){Student s = new Student();
		s.test();//Student.test()
		Person p = new Student();
		p.test();//Student.test()
	}
}

重寫:
1.需要有繼承關(guān)系
2.方法名相同
3.參數(shù)列表相同
4.修飾符的范圍可以擴大但不能縮小
5.拋出的異常:范圍可以被縮小但不能擴大
6.快捷鍵:Alt+Insert → override
為什么需要重寫
子類不一定需要父類的功能,或者父類不一定滿足子類的需求

多態(tài)

動態(tài)編譯
對象的實際類型是確定的,但可以指向的引用類型不確定

Person p = new Student();//父類的引用指向子類的類型
Object o = new Student();

子類能都用的方法,要么是自己的,要么是繼承的;父類只能調(diào)用自己的方法,不能調(diào)用子類獨有的方法

public class Person{public void run(){sout("Person.run()");}
}
public class Student extends Person{public void run(){sout("Student.run()");}
	public void eat(){sout("Student.eat()");}
}
public class Demo{public static void main(String[] args){Student s = new Student();
		s.eat();//Student.eat(),自己的
		s.run();//Student.run(),重寫的
		Person p = new Student();
		p.run();//Student.run(),重寫的
		p.eat();//×,子類獨有的
	}
}

注意:
1.多態(tài)是方法的多態(tài),屬性沒有多態(tài)
2.父類和子類有聯(lián)系,如果沒關(guān)系會有類型轉(zhuǎn)換異常,ClassCastException
3.存在條件:繼承關(guān)系、重寫,父類引用指向子類對象

public class Person{public void test(){sout("Person.test()");}}
public class Student extends Person{public void test(){sout("Student.test()");}}
public class Teacher extends Person{public void test(){sout("Teacher .test()");}}
public class Demo{public static void main(String[] args){Person p1 = new Person();
		Person p2 = new Teacher();
		Person p3 = new Student();
		p1.test();//Person.test()
		p2.test();//Teacher.test()
		p3.test();//Student.test()
	}
}

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

名稱欄目:Java學(xué)習(xí)-面向?qū)ο?中)-創(chuàng)新互聯(lián)
分享地址:http://www.rwnh.cn/article38/gegpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、手機網(wǎng)站建設(shè)、微信公眾號網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
舟曲县| 乡城县| 东乌珠穆沁旗| 石柱| 绥中县| 花莲县| 南漳县| 崇州市| 天等县| 东安县| 灵川县| 墨江| 利川市| 钦州市| 洞头县| 喀喇沁旗| 女性| 图木舒克市| 雷波县| 水富县| 龙口市| 达孜县| 贺州市| 壤塘县| 广安市| 桓台县| 堆龙德庆县| 平定县| 蕲春县| 庆安县| 浠水县| 无极县| 乐山市| 商洛市| 藁城市| 尉犁县| 玉环县| 大安市| 阜宁县| 航空| 自贡市|