本文將為您介紹 Java 基礎知識中,Java 繼承的概念以及繼承的使用方法等。
一、簡介
什么是繼承?普遍認知,如繼承手藝、繼承遺產(chǎn)等,從另外一個人身上獲得技藝或者財富。
在Java中,繼承是三大特性之一,是一種機制,表示為從子對象獲一個取父對象的所有屬性和行為。換個說法就是,子類繼承了父類的所有東西,同時自己也可以有一些父類所沒有的。
在Java中,要使用繼承,需要使用關鍵字 ?extends
?,具體語法如下:
class Subclass-name extends Superclass-name
{
//methods and fields
}
Java繼承的示例:
上圖中,?Employee
?是父類,?Programmer
?是子類。表示?Programmer
?是?Employee
?的一個子類型。具體代碼:
class Employee {
float salary = 48880;
}
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);
}
}
執(zhí)行結果:
Programmer salary is : 40000.0
Bonus of programmer is: 10000
從結果可以得到,子類除了自身定義的屬性(bonus),還繼承了父類的屬性(salary)。
二、Java繼承類型
在 Java 中主要是三中類型的繼承:單一、多級和分層。在 Java 編程中,僅能通過接口支持多重和混合繼承,想要了解該部分可以參考Java 基礎知識接口。
【注】在Java中只有接口接受多重繼承,而類有且只能繼承一個。
(1)單一繼承
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...
(2)多級繼承
class Animal{
void eat() {
System.out.printin("eating..."):
}
}
class Dog extends Animal{
void bark(){
System.out.printIn("barking..." );
}
}
class BabyDog extends Dog{
void weep(){
System.out.printin("weeping...");
}
}
class Testinheritance2{
public static void rain(String args[]){
BabyDog d = new BabyDog();
d.weep();
d.bark();
d.eat();
}
}
weeping...
barking...
eating...
(3)分層繼承
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.meaw();
c.eat();
}
}
meowing...
eating...
三、總結
關于Java繼承的概念和Java中關于類的繼承使用方法介紹就到此結束了,此外 Java 的繼承中關于多重繼承的內容,是在接口內容中。如果想要了解更多關于Java基礎知識的內容,請關注 w3cschool。