extends在java中的作用是繼承的意思,在Java中,通過關(guān)鍵字extends繼承一個已有的類,被繼承的類稱為父類【超類,基類】,新的類稱為子類【派生類】,并且在Java中不允許多繼承。
繼承是理解面向?qū)ο蟪绦蛟O(shè)計的關(guān)鍵。在Java中,通過關(guān)鍵字extends繼承一個已有的類,被繼承的類稱為父類(超類,基類),新的類稱為子類(派生類)。在Java中不允許多繼承。
class Animal{ void eat(){ System.out.println("Animal eat"); } void sleep(){ System.out.println("Animal sleep"); } void breathe(){ System.out.println("Animal breathe"); } } class Fish extends Animal{ } public class TestNew { public static void main(String[] args) { // TODO Auto-generated method stub Animal an = new Animal(); Fish fn = new Fish(); an.breathe(); fn.breathe(); } }
在eclipse執(zhí)行得:Animal breathe!
Animal breathe!
.java文件中的每個類都會在文件夾bin下生成一個對應(yīng)的.class文件。執(zhí)行結(jié)果說明派生類繼承了父類的所有方法。
覆蓋
class Animal{ void eat(){ System.out.println("Animal eat"); } void sleep(){ System.out.println("Animal sleep"); } void breathe(){ System.out.println("Animal breathe"); } } class Fish extends Animal{ void breathe(){ System.out.println("Fish breathe"); } } public class TestNew { public static void main(String[] args) { // TODO Auto-generated method stub Animal an = new Animal(); Fish fn = new Fish(); an.breathe(); fn.breathe(); } }
執(zhí)行結(jié)果:
Animal breathe
Fish breathe
在子類中定義一個與父類同名,返回類型,參數(shù)類型均相同的一個方法,稱為方法的覆蓋。方法的覆蓋發(fā)生在子類與父類之間。另外,可用super提供對父類的訪問。
推薦教程: 《java教程》