Ngày 1: Đa hình trong Java (Polymorphism).
Đa hình là một trong bốn đặc điểm chính của lập trình hướng đối tượng trong Java, bên cạnh đó là tính kế thừa, tính đóng gói, và tính trừu tượng. Polymorphism cho phép các đối tượng có thể lựa chọn hành vi cụ thể tại thời điểm runtime dựa trên kiểu đối tượng của chúng.
Ví dụ chi tiết:
class Animal {
void sound(){
System.out.println(“animal sound”);
}
}
class Dog extends Animal {
void sound(){
System.out.println(“dog barks”);
}
}
class Main {
public static void main(String args[]) {
Animal myAnimal;
myAnimal = new Dog();
myAnimal.sound(); // It would print “dog barks”
}
}
Câu hỏi phỏng vấn liên quan:
1. Làm sao để sử dụng đa hình trong Java?
– Trả lời: Đa hình có thể được sử dụng trong Java bằng cách khai báo một đối tượng thuộc kiểu lớp cha và khởi tạo nó dựa trên kiểu lớp con.
2. Đa hình static và đa hình dynamic trong Java khác nhau như nào?
– Trả lời: Đa hình static xảy ra ngay cả khi không có lớp con, mà chỉ dựa vào số lượng và kiểu dữ liệu của tham số. Đa hình dynamic thì dựa vào kiểu lớp con mà lớp cha đang trỏ đến.
3. Có phải tất cả các method đều có tính đa hình không?
– Trả lời: Không, chỉ những method non-static, non-final và non-private mới có tính đa hình.
4. Định nghĩa: “Polymorphism cho phép một đối tượng có nhiều hình thức”. Điều này có nghĩa là gì trong Java?
– Trả lời: Điều này có nghĩa là một đối tượng thuộc lớp cha có thể được xem như là một đối tượng thuộc lớp con. Tùy thuộc vào điều kiện, một đối tượng có thể hành xử như là một đối tượng thuộc các lớp khác nhau.
5. Đa hình có thể giúp cải thiện hiệu suất code Java như thế nào?
– Trả lời: Đa hình giúp tạo ra code linh hoạt và mềm dẻo hơn. Điều này giúp ngăn ngừa việc lặp code và làm cho việc mở rộng chương trình dễ dàng hơn, cải thiện hiệu suất.