M
manunana89
Gast
Könnt mir mal jemand erklären aus was eine Klasse besteht un was sie immer enthalten muss um zu funktionieren!!!
und {} ...Gast hat gesagt.:Mindestens einen Buchstaben und das Wörtchen class davor
class Name
{ // kann leer sein }
Name(){//...}
public/private/protected class Name{}
hdi hat gesagt.:aber sie sind trotzdem ganz einfach falsch, und zwar alle.
gast hat gesagt.:Mindestens einen Buchstaben und das Wörtchen class davor
Marco13 hat gesagt.:und {} ...
hdi hat gesagt.:Ausnahme: abstrakte Klassen, die dürfen keinen haben
public abstract class Blub {
public Blub() {
}
}
hdi hat gesagt.:Der Klassenname muss mit einem Gross-Buchstaben beginnen
public class blub {}
new Object(){};
Auch das ist falsch. Wenn du selber Konstruktoren definierst, gibt es keinen Default-Konstruktor mehr, es sei denn, du schreibst explizit einen parameterlosen Konstruktor hin und nennst den dann default.hdi hat gesagt.:Du kannst ihn überschreiben oder mehrere Konsturktoren erstellen, die sich in ihren Parametern unterscheiden, aber
den Default-Konstruktor hat jede Klasse und muss ihn auch haben. Denn von jeder nicht abstrakte Klasse muss man Objekte erstellen können.
hdi hat gesagt.:Ich will nicht klugscheissenIch schon :wink:
Und mit new Object(){} definierst du ja einen Namen, genauer gesagt ist es doch so dass du hier gar keine neue Klasse erstellst, sondern nur ein Objekt, vom Typ der Klasse "Object". new(){} würde ja nicht gehen.
Unabhängig von der philosophischen Frage, was es heißt, "eine Klasse zu erstellen": Das erzeugte Objekt ist NICHT vom Typ 'Object', sondern vom Typ einer anonymen Klasse, die (wie alle Klassen) von Object erbt.
Du kannst dir ja vorstellen dass so ne Antwort wie:
"Eine Klasse ist eine abstrakte Idee und braucht nichts!"
von den Korrekteuren nicht als richtige Lösung angesehen wird
Och, wenn ich der Korrekteur wäre.... :roll: :wink:
Och, wenn ich der Korrekteur wäre....
Selbstverständlich ist es das. Jedes Objekt ist vom Typ Object (wo wir schon beim Klugscheißen sind).Marco13 hat gesagt.:Das erzeugte Objekt ist NICHT vom Typ 'Object'