Ist der Name eines Ojekts eine Eigenschaft

Status
Nicht offen für weitere Antworten.
F

Farin

Gast
Ich habe heute meine erste Klassenarbeit zu Java geschrieben und unter anderem wurde gefragt welche Objekte verwendet wurden und was deren Eigenschaften sind. Nun behauptet meine Lehrerin das der Name eines Objekts (z.B. String string1) eine Eigenschaft ist. So weit ich jedoch weiß muss eine Eigenscaft veränderbar sein und als Variable in der Klasse des Objekts deklariert sein denn sonst ware ja bei "int Zahl1" Zahl1 eine Eigenschaft!? Was stimmt nun bitte helft mir :roll:

Farin
 
S

stev.glasow

Gast
deins stimmt.

sagen wir du hast eine klasse javafan. und machst damit follgendes:

javafan stevg = new javafan("Stev Glasow");
stevg.alter = 88;

dann ist stevg ein objekt und alter eine eigenschaft.
 
B

bygones

Gast
das fällt mir erst etzt auf - stevg ist schon verdammt alt :roll: :autsch:
 

P3AC3MAK3R

Top Contributor
stevg hat gesagt.:
deins stimmt.

sagen wir du hast eine klasse javafan. und machst damit follgendes:

javafan stevg = new javafan("Stev Glasow");
stevg.alter = 88;

dann ist stevg ein objekt und alter eine eigenschaft.
Die Klassennamen schreiben wir aber doch besser weiterhin groß. ;)
 
G

Gast

Gast
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.
 
J

Java Lover

Gast
*hehe* find ich lustig die diskussion

wie sollte denn ein variablenname zu einem objekt gehören. ein objekt kann natürlich einen namen haben in der form objekt.name, aber damit ein objekt mit dem namen arbeiten kann muss es ja schließlich darauf zugreifen können, was natürlich nur möglich ist, wenn es sich um ein attribut des objektes handelt.

eine interessante überlegung wäre ja beispiels weiße zu welchem objekt folgende variable gehört
Code:
String name;
ok könnten ja manche meinem zum nullobjekt *lach*

so um das nochmal etwas deutlicher darzustellen ist eine variable ein platzhalter für eine bestimmte art von datentyp. also gehört zu einer variable ein datentyp (objekt), nicht anderherrum, was leicht zu belegen ist, da es für ein und dasselbe objekt ja mehrere variablen geben kann. also folgendermaßen
Code:
Klasse name1 = new Klasse();
Klasse name2 = name1;
welche der variablen gehört nun zu dem einen!! objekt, name1 oder name2. kann also gar nicht sein.

viel spaß beim überreden deiner lehrerin, wenn du das nicht schon hinter dir hast.

cu
 
L

LazyBoy

Gast
^^du hast das gut erkannt. Ein Objekt hat keinen Namen. Es gibt natürlich Bezeichner die auf ein Objekt zeigen (referenzieren), aber das ist nicht der Name des Objekts. Wie oben bereits erwähnt können ja zwei völlig unterschiedliche Bezeichner auf ein und dasselbe Objekt zeigen. Dann hätte das Objekt ja zwei Namen, und das ist natürlich totaler Schwachsinn. Wenn deine Lehrerin das behauptet, dann hat sie keine Ahnung von Programmiersprachen.
 
D

devent00

Gast
Farin hat gesagt.:
Ich habe heute meine erste Klassenarbeit zu Java geschrieben und unter anderem wurde gefragt welche Objekte verwendet wurden und was deren Eigenschaften sind. Nun behauptet meine Lehrerin das der Name eines Objekts (z.B. String string1) eine Eigenschaft ist. So weit ich jedoch weiß muss eine Eigenscaft veränderbar sein und als Variable in der Klasse des Objekts deklariert sein denn sonst ware ja bei "int Zahl1" Zahl1 eine Eigenschaft!? Was stimmt nun bitte helft mir :roll:

Farin

hmm ansich können doch nur Klassen Atribute/Eigenschaften haben, Objekte sind Instanzen einer Klasse. string1 ist nur ein Platzhalter für die Speicheradresse, wo eine Instanz der Klasse String gespeichert ist. Die einzige Eigenschaft/Attribute die Objekte haben, ist die Adresse die sie abspeichern.
Das man trotzdem sowas wie string1.substr() schreiben kann ist doch nur eine Vereinfachung der Sprache.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Name einer Instanz einer Klasse IN der Klasse erfahren ?? Softwareentwicklung 3
X Programmieren eines Spieles Softwareentwicklung 25
J Programmierung eines MazeGames Softwareentwicklung 1
G Anzahl der Rekursionsaufrufe eines DFS Algorithmus Softwareentwicklung 16
F Planung und Durchführung eines Projektes Softwareentwicklung 2
A Händische Programmierung eines 1:n-ORM Softwareentwicklung 3
? Fragen zur richtigen Umsetzung eines Projektes Softwareentwicklung 3
M Ada95 - Breite eines Baumes bestimmen Softwareentwicklung 3
B Konstruktion eines Epsilon Automaten & NFA Softwareentwicklung 2
B Signatur eines Abstrakten Datentyps Softwareentwicklung 10
S Länge eines char[][] Softwareentwicklung 12
F Aufwändes eines Software Projektes Softwareentwicklung 21
M Technische Abwicklung eines Onlinekaufs Softwareentwicklung 7
-horn- "Laufzeitberechnung" eines Programmes? Softwareentwicklung 5
U Komplexität eines Algorithmus Softwareentwicklung 1
Z Herangehensweise zum "entschlüsseln" eines Dateifo Softwareentwicklung 2
G Modellierung eines graphentheoretischen Problems Softwareentwicklung 5
V alle abgeleiten Klassen eines Interfaces finden? Softwareentwicklung 2
I Object mit Hilfe eines Class-Objectes instanzieren Softwareentwicklung 3
M Elemente eines Vektors zufällig anordnen Softwareentwicklung 2
M Software zur Erstellung eines Pflichtenhefts? Softwareentwicklung 15
F Zellen eines Excel-Sheets per VBA disablen (ausgrauen)? Softwareentwicklung 10
H Synchronisation eines Bitstreams Softwareentwicklung 4
B Programmierung eines 8051-Assemblers unter Java Softwareentwicklung 3

Ähnliche Java Themen

Neue Themen


Oben