Java使用继承的语法是,Java使用继承
本文概述
用Java繼承是一種機制,一個對象獲得所有父對象的屬性和行為。這是一個重要的哦(面向對象編程系統)的一部分。
繼承在Java背后的理念是,你可以創建新的類建立在現有類。當你從一個現有的類繼承時,你可以重用父類的方法和字段。此外,你可以添加新的方法和字段在當前類也。
業代表的是一個關系也稱為父子關系。
為什么在java中使用繼承
方法的重寫(因此可以實現運行時多態性)。
代碼可重用性。
條款中使用繼承
類:類是一組對象的共同屬性。這是一個模板或創建對象的藍圖。
子類/子類:子類是一個類繼承另一個類。它也被稱為一個派生類,擴展類或子類。
超類/父類:超類是類的一個子類繼承的特性。它也被稱為基類或父類。
可重用性:如名稱指定了可重用性是一種機制,使你更容易重用現有類的字段和方法當你創建一個新類。你可以使用相同的字段和方法已經在前面的類定義。
Java繼承的語法
class Subclass-name extends Superclass-name
{
//methods and fields
}
擴展關鍵字表明你正在一個新類,它來源于現有類。“擴展”的意義是增加的功能。
在術語的Java類,這是遺傳的叫做父母或超類,和新類稱為孩子或子類。
Java繼承的例子
作為顯示在上面的圖中,程序員是子類和員工是超類。兩個類之間的關系是程序員是一個員工。這意味著程序員是一個類型的員工。
class Employee{
float salary=40000;
}
class Programmer extends Employee{
int bonus=10000;
public static void main(String args[]){
Programmer p=new Programmer();
System.out.println("Programmer salary is:"+p.salary);
System.out.println("Bonus of Programmer is:"+p.bonus);
}
}
Programmer salary is:40000.0
Bonus of programmer is:10000
在上面的例子中,程序員自己的類的對象可以訪問字段,以及員工的類即代碼可重用性。
在java類型的繼承
類的基礎上,可以有三種類型的繼承java:單身,多層次、分級。
在java編程中,通過接口只支持多重繼承和混合。稍后我們將了解接口。
注:不支持多重繼承Java類。
當一個類繼承多個類,它被稱為多重繼承。例如:
單繼承的例子
文件:TestInheritance.java
class Animal{
void eat(){System.out.println("eating...");}
}
class Dog extends Animal{
void bark(){System.out.println("barking...");}
}
class TestInheritance{
public static void main(String args[]){
Dog d=new Dog();
d.bark();
d.eat();
}}
輸出:
barking...
eating...
多級繼承的例子
文件:TestInheritance2.java
class Animal{
void eat(){System.out.println("eating...");}
}
class Dog extends Animal{
void bark(){System.out.println("barking...");}
}
class BabyDog extends Dog{
void weep(){System.out.println("weeping...");}
}
class TestInheritance2{
public static void main(String args[]){
BabyDog d=new BabyDog();
d.weep();
d.bark();
d.eat();
}}
輸出:
weeping...
barking...
eating...
層次繼承的例子
文件:TestInheritance3.java
class Animal{
void eat(){System.out.println("eating...");}
}
class Dog extends Animal{
void bark(){System.out.println("barking...");}
}
class Cat extends Animal{
void meow(){System.out.println("meowing...");}
}
class TestInheritance3{
public static void main(String args[]){
Cat c=new Cat();
c.meow();
c.eat();
//c.bark();//C.T.Error
}}
輸出:
meowing...
eating...
問為什么java不支持多重繼承?
降低復雜性和簡化語言,用java不支持多重繼承。
考慮這樣一個場景,a,B,C三個類。C類繼承了A和B類。如果A和B類的方法和你一樣從子類對象調用它,會有歧義A或B類的調用方法。
由于編譯時錯誤比運行時錯誤,Java編譯時錯誤如果你繼承2呈現類。所以你是否有相同或不同的方法,會有編譯時錯誤。
class A{
void msg(){System.out.println("Hello");}
}
class B{
void msg(){System.out.println("Welcome");}
}
class C extends A,B{//suppose if it were
public static void main(String args[]){
C obj=new C();
obj.msg();//Now which msg() method would be invoked?
}
}
Compile Time Error
總結
以上是生活随笔為你收集整理的Java使用继承的语法是,Java使用继承的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 建设银行装修贷款需要哪些条件
- 下一篇: 基金净值一般能增长多少 投资时可以选择