Câu hỏi phỏng vấn OOP
Câu hỏi

Câu hỏi được dịch là: "Sự khác biệt giữa class và structure là gì?"

Câu trả lời

Sự khác biệt chính giữa class và structure trong lập trình, đặc biệt là trong ngôn ngữ Swift, bao gồm các điểm sau:

  1. Kiểu Dữ Liệu: Class là kiểu tham chiếu (reference type) trong khi structure là kiểu giá trị (value type). Điều này có nghĩa là khi bạn gán một instance của class cho một biến hoặc hằng số khác, cả hai sẽ tham chiếu đến cùng một instance trên bộ nhớ. Ngược lại, khi bạn gán một instance của structure cho một biến hoặc hằng số khác, một bản sao hoàn toàn mới của instance đó sẽ được tạo ra[1][3][5].

  2. Kế Thừa: Class hỗ trợ kế thừa, cho phép một class có thể kế thừa thuộc tính và phương thức từ một class khác. Structure không hỗ trợ kế thừa[1][3][5].

  3. Hàm Huỷ (Deinitializer): Class cung cấp hàm deinit, được gọi trước khi một instance của class được giải phóng khỏi bộ nhớ. Structure không có hàm deinit[1][3].

  4. Memberwise Initializer: Structure trong Swift tự động cung cấp một initializer mặc định để khởi tạo tất cả các thuộc tính của nó. Class không tự động cung cấp initializer này, yêu cầu phải tự định nghĩa nếu cần[2][5].

  5. Mutating Methods: Trong structure, nếu bạn muốn thay đổi giá trị của bất kỳ thuộc tính ...

junior

junior

Gợi ý câu hỏi phỏng vấn

senior

Sự khác biệt cụ thể giữa Interface và abstract class là gì?

expert

Tại sao lại ưu tiên Sử dụng Composition hơn là Inheritance? Có những sự đánh đổi nào cho mỗi phương pháp? Khi nào bạn nên chọn Inheritance thay vì Composition?

junior

Giải thích những đặc điểm cơ bản của OOP

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào