開発者は、クラスのインスタンスに格納されたデータの一部を参照するときに、これらの用語を同じ意味で使用することが多いようです。
各用語に技術的な違いはありますか、それとも同じ意味で使用しても問題ありませんか?
開発者は、クラスのインスタンスに格納されたデータの一部を参照するときに、これらの用語を同じ意味で使用することが多いようです。
各用語に技術的な違いはありますか、それとも同じ意味で使用しても問題ありませんか?
「メンバー」はより広い用語です。そのクラスのすべてを参照します(インスタンスメソッド/変数など)
「属性/変数/フィールド」は同じで、「メンバー」も使用できます。
さまざまな回答に基づいて、クラスの「属性」、「フィールド」、および「変数」は比較的互換的に使用されますが、人によって異なる微妙な違いがあります。そのため、ニュアンスに依存せず、それらをひとまとめにするのがおそらく最善です。
クラスの「メンバー」にはデータだけでなくメソッドも含まれるため、他のメンバーとは異なるというコンセンサスがあります。
Member : Normally used to define the variables and methods.
Attribute : Attributes are the instance variables of an Object.
Variable : Primitive variables and Objects reference variables as instance or local variables.
Field: Field marks an instance variable.
Attribute: abstract notion of a property within a class. For instance, a Person class might have a lastName attribute. Usage of attribute vs field can depend on how "complex" the attribute's type is. Simpler types are often referred to as attributes.
Member: this refers to a method or variable that is tied to an object instance
Variable: An abstract concept indicating that the given name represents a value that can vary, and can often be altered
Field: a field is like an attribute, although field is sometimes used to connote something more complex than an attribute.
私が見た一般的な使用法:
属性 - ほぼ標準的な英語辞書の意味。通常、メンバー、変数、またはフィールドではなく、Java (Bean) プロパティなどのより抽象的な概念に使用されます。
member -プログラムの外部から見えるメソッドとフィールド。C# には、プロパティとイベントが含まれます。
変数 - 通常はローカル変数。特にフィールドを定義しようとする場合、フィールドを参照することがあります。
fields - クラスおよびインスタンス変数; クラス全体で見える変数。
(私は自分でこのように言葉を使用しようとしているので、間違っている場合はお知らせください!)