Mình học Java và mình có thể nói sơ qua như sau:
Mỗi đối tượng được thể hiện qua một class. vd 1 con chó là một đối tượng được thể hiện qua 1 class tên là CHO. Trong class CHO này có các thuộc tính màu lông, chiều cao, cân nặng… Một class có thể tạo ra nhiều đối tượng (nhiều con chó khác nhau). Mỗi đối tượng có các thuộc tính khác nhau (mỗi con chó có màu lông, chiều cao, cân nặng khác nhau). Các thuộc tính, phương thức trong một lớp đều có access modifier là public/protected/“default”/private.
- public: có thể truy cập từ bất kỳ đâu.
- protected: được phép truy cập từ class chứa thuộc tính đó và class dẫn xuất (class con) kế thừa từ lớp cơ sở (class cha).
- private: chỉ được truy cập từ class chứa thuộc tính đó.
Nên dùng private và protected để tránh bị truy cập trực tiếp từ bên ngoài. cũng giống như tiền nhà bạn thì bạn nên cất đi không để người ngoài dùng =)) Để truy cập các thuộc tính private thì lúc này dùng đến các phương thức get/set.