Có quá nhiều thông tin về các đối tượng. Điều quan trọng nhất là phải nắm vững những điều cơ bản và mọi thứ sẽ rơi vào vị trí dễ dàng hơn.
Đây là một cách để suy nghĩ về các đối tượng. Suy nghĩ về cấu trúc dữ liệu trong các ngôn ngữ thủ tục. Chúng là một nhóm các trường không có hành vi. Hãy nghĩ về các hàm nhận con trỏ đến các cấu trúc dữ liệu đó và thao tác với cấu trúc sau. Bây giờ, thay vì để chúng tách biệt, hãy xác định các chức năng bên trong định nghĩa của cấu trúc và giả sử các hàm thường nhận một con trỏ đến cấu trúc dữ liệu để thao tác. Con trỏ đó được gọi là cái này. Tóm lại, hãy nghĩ về các đối tượng là sự kết hợp của trạng thái (dữ liệu) và hành vi (các phương thức - tên ưa thích của các hàm trong OOP).
Đây là điều cơ bản tuyệt đối. Có ba khái niệm nữa bạn phải hoàn toàn nắm vững:
Kế thừa - Đây là tất cả về việc sử dụng lại mã.
Đóng gói - Đây là tất cả về việc ẩn việc triển khai khỏi giao diện. Nói một cách đơn giản, mọi thứ phải ở chế độ riêng tư cho đến khi được chứng minh ngược lại.
Tính đa hình - Không quan trọng kiểu của biến tham chiếu mà là kiểu của cá thể thực tế để biết hành vi (phương thức) nào được gọi. Java không dễ dàng để có khái niệm này vì theo định nghĩa, mọi thứ đều là đa hình. .Net giúp bạn dễ hiểu hơn khi bạn quyết định đâu là đa hình và đâu là không, do đó nhận thấy sự khác biệt trong hành vi. Điều này đạt được nhờ sự kết hợp giữa ảo và ghi đè.
Nếu những khái niệm này được hiểu rất rõ, bạn sẽ ổn.
Một mẹo cuối cùng cuối cùng: Bạn đề cập đến những cuốn sách hay nhất. Bạn đã đọc " Thinking in Java " của Bruce Eckel chưa? Tôi giới thiệu cuốn sách này ngay cả với những người bắt đầu với .Net, vì các khái niệm OOP được trình bày rõ ràng.