Hmmm, am Anfang hatte ich die gleiche Idee wie stevg. Nichtdestotrotz hab' ich ein wenig recherchiert (ist nichts los heute auf der Arbeit
). Man kann hier durchaus geteilter Meinung sein. Das Free On-line Dictionary of Computing (
www.dictionary.net) definiert Attribut (Eigenschaft) so:
attribute
A named value or relationship that exists for some or
all instances of some entity and is directly associated
with that instance.
WordNet (r) 1.7 definiert eine Eigenschaft so:
attribute (noun)
1: a construct whereby objects or individuals can be distinguished; "self-confidence is not an endearing property" [syn: property, dimension]
2: an abstraction belonging to or characteristic of an entity
Der Name eines Objektes erfuellt diese Definitionen und auch andere (Oxford Dictionary, Duden der Informatik) und ist somit ein Attribut des Objektes. Somit ist also in der OOP der Fall klar. In Java liegt die Sache etwas anders:
Das Java Glossary (
http://mindprod.com/jgloss/attribute.html) sieht die Sache so:
attribute
An instance or static variable, usually called a field. It is the term used in Eiffel and some other OO languages. In Meyer's definition, there is no implication of public, but some people use the term only for public variables.
Damit waehre der Name des Objekts keine Eigenschaft des Objekts.
Du solltest Deine Lehrerin fragen in welchem Kontext (allgemeine OOP oder Java) sie ihre Behauptung aufstellt um den Disput zu klaeren.
Ich persoenlich wuerde mich aber auch der Java Meinung anschliessen und den Namen des Objekts als einen Bezeichner - also etwas was nicht zum Object gehoert (wie ein Variablenname) - betrachten.