Java是一門面向?qū)ο蟮木幊陶Z言,其中繼承和多態(tài)是其重要的特性,下面來分別介紹:
繼承是指一個(gè)類可以繼承另一個(gè)類的屬性和方法,這個(gè)被繼承的類稱為父類或超類,而由其繼承而來的類稱為子類。繼承的語法為:
class 子類名 extends 父類名 { // 子類的屬性和方法 }
子類可以訪問父類的公有屬性和方法,也可以覆蓋或者重寫父類的屬性和方法。例如:
class Animal { public void eat() { System.out.println("動(dòng)物吃食物"); } } class Cat extends Animal { public void eat() { System.out.println("貓吃魚"); } } Cat cat = new Cat(); cat.eat(); // 輸出:"貓吃魚"
多態(tài)是指同一個(gè)方法調(diào)用可能會(huì)有不同的行為,即同一操作作用于不同的對象上面,可以產(chǎn)生不同的執(zhí)行結(jié)果。Java中實(shí)現(xiàn)多態(tài)有兩種方式,分別是重載和重寫。
重載是指在一個(gè)類中定義多個(gè)方法名相同但參數(shù)個(gè)數(shù)或參數(shù)類型不同的方法,而編譯器會(huì)根據(jù)實(shí)參的不同來調(diào)用不同的方法。例如:
class MethodOverload { public void print(int num) { System.out.println("打印整數(shù):" + num); } public void print(String str) { System.out.println("打印字符串:" + str); } } MethodOverload method = new MethodOverload(); method.print(100); // 輸出:"打印整數(shù):100" method.print("hello"); // 輸出:"打印字符串:hello"
重寫是指子類可以重寫父類的方法,實(shí)現(xiàn)了一種多態(tài)的形式。例如:
class Person { public void sleep() { System.out.println("人睡覺"); } } class Student extends Person { public void sleep() { System.out.println("學(xué)生睡覺"); } } Person person = new Student(); person.sleep(); // 輸出:"學(xué)生睡覺"
以上就是Java中繼承和多態(tài)的基本介紹。