JavaScript is required

What is the output of the following code?
Media VietJack

A.
Parent Parent
B.
Parent Child Child Parent
C.
Child Parent Parent Child
D.
Error
Trả lời:

Đáp án đúng: B


Đoạn code thể hiện việc kế thừa trong lập trình hướng đối tượng. Class `Parent` có một phương thức khởi tạo in ra "Parent". Class `Child` kế thừa từ `Parent` và cũng có một phương thức khởi tạo in ra "Child". Khi một đối tượng `Child` được tạo ra (`Child c = new Child();`), phương thức khởi tạo của `Child` được gọi. Trong phương thức khởi tạo của `Child`, `super()` được gọi, điều này gọi đến phương thức khởi tạo của class cha (`Parent`). Do đó, "Parent" được in ra trước, sau đó "Child" được in ra. Tiếp theo, một đối tượng `Parent` được tạo ra (`Parent p = new Parent();`). Phương thức khởi tạo của `Parent` được gọi, và "Parent" được in ra. Cuối cùng, `c.show()` được gọi. Phương thức `show()` được kế thừa từ class cha `Parent`, do đó nó in ra "Parent". Vậy, output của chương trình là: Parent Child Parent Parent. Đáp án phù hợp nhất là B.

Câu hỏi liên quan