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

Giải thích khái niệm về Destructor trong C++

middle

Abstract class là gì? Đặc điểm nổi bật của một abstract class là gì?

expert

Bạn đã định nghĩa một hàm hủy trong một lớp mà bạn đã phát triển bằng cách sử dụng C#, nhưng hàm hủy đó không bao giờ được thực thi. Tại sao?

Bình luận

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

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