Java Tut 28: Kế thừa trong Java (Java Inheritance)

0
0
(0)

Java Inheritance (Subclass và Superclass)

Trong Java, có thể kế thừa các thuộc tính và phương thức từ lớp này sang lớp khác. Chúng tôi nhóm “khái niệm kế thừa” thành hai loại:

  • lớp con (con) – lớp kế thừa từ lớp khác
  • lớp cha (cha) – lớp được kế thừa từ

Để kế thừa từ một lớp, hãy sử dụng extends từ khóa.

Trong ví dụ dưới đây, Carlớp (lớp con) kế thừa các thuộc tính và phương thức từ Vehiclelớp (lớp cha):

Thí dụ

class Vehicle {
  protected String brand = "Ford";        // Vehicle attribute
  public void honk() {                    // Vehicle method
    System.out.println("Tuut, tuut!");
  }
}

class Car extends Vehicle {
  private String modelName = "Mustang";    // Car attribute
  public static void main(String[] args) {

    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (from the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand attribute (from the Vehicle class) and the value of the modelName from the Car class
    System.out.println(myCar.brand + " " + myCar.modelName);
  }
}
 

Hãy tự mình thử »

Bạn có nhận thấy công cụ protectedsửa đổi trong Xe không?

Chúng tôi đặt thuộc tính thương hiệu trong Xe thành công cụ protected sửa đổi quyền truy cập . Nếu nó được đặt thành private, lớp Xe sẽ không thể truy cập nó.

Tại sao Và Khi nào Sử dụng “Thừa kế”?

– Nó hữu ích cho khả năng tái sử dụng mã: sử dụng lại các thuộc tính và phương thức của một lớp hiện có khi bạn tạo một lớp mới.

Mẹo: Cũng hãy xem chương tiếp theo, Đa hình , sử dụng các phương thức kế thừa để thực hiện các tác vụ khác nhau.


Từ khóa cuối cùng

Nếu bạn không muốn các lớp khác kế thừa từ một lớp, hãy sử dụng finaltừ khóa:

Nếu bạn cố gắng truy cập một finallớp, Java sẽ tạo ra lỗi:

final class Vehicle {
  ...
}

class Car extends Vehicle {
  ...
}

Đầu ra sẽ như thế này:

Main.java:9: error: cannot inherit from final Vehicle
class Main extends Vehicle {
                  ^
1 error)

Hãy tự mình thử »

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Leave A Reply

Your email address will not be published.