真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

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.保護(hù)數(shù)據(jù),提升程序安全性
2.隱藏代碼實(shí)現(xiàn)細(xì)節(jié)
3.統(tǒng)一接口
4.提高系統(tǒng)可維護(hù)性

繼承

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中,所有的類都默認(rèn)繼承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)造方法的第一個(gè)
2.super必須只能出現(xiàn)在子類的方法或構(gòu)造方法中
3.super和this不能同時(shí)調(diào)用構(gòu)造方法
super VS this:
代表對(duì)象不同:this調(diào)用者對(duì)象,super父類對(duì)象
前提不同:this沒有繼承也可以使用,super只能在繼承條件下才可以使用
構(gòu)造方法:this調(diào)用本類構(gòu)造,super調(diào)用父類構(gòu)造

重寫

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

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)方法是對(duì)象的方法,在子類實(shí)例化時(shí)重寫了父類的方法

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.修飾符的范圍可以擴(kuò)大但不能縮小
5.拋出的異常:范圍可以被縮小但不能擴(kuò)大
6.快捷鍵:Alt+Insert → override
為什么需要重寫
子類不一定需要父類的功能,或者父類不一定滿足子類的需求

多態(tài)

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

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

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

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();//×,子類獨(dú)有的
	}
}

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

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海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧


網(wǎng)站欄目:Java學(xué)習(xí)-面向?qū)ο?中)-創(chuàng)新互聯(lián)
標(biāo)題路徑:http://weahome.cn/article/gegpp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部