Trong Swift, protocol
và class
là hai khái niệm cơ bản nhưng có những điểm khác biệt quan trọng:
- Protocol là một khái niệm được sử dụng để định nghĩa một "bản mẫu" của phương thức, thuộc tính, và các yêu cầu khác cho một tác vụ cụ thể hoặc một chức năng nào đó. Protocol không cung cấp triển khai cụ thể cho bất kỳ phương thức hoặc thuộc tính nào mà nó định nghĩa. Thay vào đó, nó chỉ định rằng bất kỳ loại nào (class, struct, hoặc enum) "tuân thủ" protocol đó phải cung cấp triển khai cụ thể cho những yêu cầu mà protocol đặt ra.
- Class là một "khuôn mẫu" hoặc "bản thiết kế" để tạo ra các đối tượng (instances) với các thuộc tính và phương thức cụ thể. Class trong Swift (và nhiều ngôn ngữ lập trình hướng đối tượng khác) cho phép kế thừa, nghĩa là một class có thể kế thừa các thuộc tính và phương thức từ một ...