どの OOP 言語にもobject-privateの概念はありますか?? 古典的なプライベートアクセスよりも制限が厳しいということですか?
Private (または class-private) は、クラス自体へのアクセスを制限します。同じクラスの一部であるメソッドのみがプライベート メンバーにアクセスできます。
object-private :オブジェクト自体へのアクセスを制限します。メンバーにアクセスできるメソッド オブジェクトのみが記述できません。
public class Person {
private String secret;
public String othersSecret;
public void snoop(Person p) {
othersSecret = p.secret; //will be prohibited by the compiler
}
編集 :
存在する場合、いくつかの例を教えていただけますか...そうでない場合、この種の機能を持つことは興味深いと思いますか?? 他のOOP言語でシミュレートすることは可能ですか??
EDIT 2: ありがとう、すべての答えは非常に有益でした...
これまでの暫定的な結論:
インスタンス プライベートの概念は、次の 2 つの言語に存在します。
1 - 何時間もグーグル検索した後の Smalltalk :) この概念の背後にある言語を見つけました !!
オブジェクトが保持する状態は、常にそのオブジェクトに対して非公開です。他のオブジェクトは、要求 (メッセージ) をオブジェクトに送信することによってのみ、その状態を照会または変更できます。
2 - LoganのおかげでRuby :