Cách "thuần túy" hoặc "chính xác" để truy cập thuộc tính của một đối tượng từ bên trong một phương thức đối tượng không phải là một phương thức getter / setter là gì?
Tôi biết rằng từ bên ngoài đối tượng, bạn nên sử dụng getter / setter, nhưng từ bên trong, bạn chỉ cần làm:
Java:
String property = this.property;
PHP:
$property = $this->property;
hoặc bạn sẽ làm:
Java:
String property = this.getProperty();
PHP:
$property = $this->getProperty();
Thứ lỗi cho tôi nếu Java của tôi hơi sai, đã một năm kể từ khi tôi lập trình bằng Java ...
BIÊN TẬP:
Có vẻ như mọi người đang cho rằng tôi chỉ đang nói về các biến / thuộc tính riêng tư hoặc được bảo vệ. Khi tôi học OO, tôi đã được dạy sử dụng getters / setters cho mọi thuộc tính ngay cả khi nó là công khai (và thực sự tôi đã được bảo là không bao giờ đặt bất kỳ biến / thuộc tính nào ở chế độ công khai). Vì vậy, tôi có thể bắt đầu từ một giả định sai lầm ngay từ đầu. Có vẻ như những người trả lời câu hỏi này có thể nói rằng bạn nên có tài sản công cộng và những tài sản đó không cần bộ định vị và bộ định vị, điều này đi ngược lại những gì tôi đã được dạy và những gì tôi đang nói, mặc dù có thể điều đó cần được thảo luận như tốt. Đó có lẽ là một chủ đề hay cho một câu hỏi khác ...