Hallo,
ich habe vor Kurzem begonnen Java zu lernen und blicke schon jetzt nicht ganz durch. Hier ist eine Sammlung meiner bisherigen Fragen:
Grundlegende Fragen:
1. Wass ist der Unterschied zwischen Objekten und Klassen? Woher weiss man z.B. das out eine Objekt und nicht eine Klasse ist? Und würde passieren wenn man den static (stimmt es, dass er dazu sorgt das die main Funktion ohne Klassendeklarition einfügen kann)
2. Warum ist "String" eine Klasse und was versteht man unter: "Zwar wird diese Klasse (Strings) bevorzugt behandelt-das Plus kann Zeichenketten zusammenhöngen-, aber es ist immer noch ein Klassentyp."
3. Warum kann die Funktion println() keine UniCode Zeichen ausgeben? Gibt es ein Muster wann dies bei Funktionen der Fall ist? Und gibt es solche wo dieses Problem durch Darstellung der UniCode Zeichen mit ihrem Ascii ersatz behoben werden könnte?
4. Warum werden Variabeln deren Wert unverändert sein soll neben den Wort final mit dem Schlüsselwort static belegt? Und warum werden diese vor der main Funktion definiert? Die Deklaration mit final macht doch die Unveränderlichkeit klar? Will man damit "nur" den Zugriff ohne Einfügen der Klasse ermöglichen?
Was ist der Unterschied zwischen einer Methode und einer FUnktion? Wie findet man dieses heraus? Und warum ist println() z.B. eine Methode?
Zu Datentypen:
1. Warum werden bzw. können ausserhalb des Wertebereichs eines Datentyp liegende Zahlen trotzdem in dieses umgewandelt? Welchen Sinn hat dies? z.b byte m= (byte)200; oder m= 200y;
2. Warum ist bei den Ganzzahlendatentypen int,short,long und byte der Wertebereich im Positiven Bereich um 1 kleiner als im Negativen Bereich?
3. Warum ist folgendes eine wahre Aussage: System.out.println(2000000000F ==2000000000F+1);?
Zu Arrays:
1. Warum werden Arrays von Zahlen als UniCode dargestellt, obwohl sie doch nur eine Aneinanderreihung von Zahlen sind und diese ja nicht in UNicode umgewandelt werden?
ich habe vor Kurzem begonnen Java zu lernen und blicke schon jetzt nicht ganz durch. Hier ist eine Sammlung meiner bisherigen Fragen:
Grundlegende Fragen:
1. Wass ist der Unterschied zwischen Objekten und Klassen? Woher weiss man z.B. das out eine Objekt und nicht eine Klasse ist? Und würde passieren wenn man den static (stimmt es, dass er dazu sorgt das die main Funktion ohne Klassendeklarition einfügen kann)
2. Warum ist "String" eine Klasse und was versteht man unter: "Zwar wird diese Klasse (Strings) bevorzugt behandelt-das Plus kann Zeichenketten zusammenhöngen-, aber es ist immer noch ein Klassentyp."
3. Warum kann die Funktion println() keine UniCode Zeichen ausgeben? Gibt es ein Muster wann dies bei Funktionen der Fall ist? Und gibt es solche wo dieses Problem durch Darstellung der UniCode Zeichen mit ihrem Ascii ersatz behoben werden könnte?
4. Warum werden Variabeln deren Wert unverändert sein soll neben den Wort final mit dem Schlüsselwort static belegt? Und warum werden diese vor der main Funktion definiert? Die Deklaration mit final macht doch die Unveränderlichkeit klar? Will man damit "nur" den Zugriff ohne Einfügen der Klasse ermöglichen?
Was ist der Unterschied zwischen einer Methode und einer FUnktion? Wie findet man dieses heraus? Und warum ist println() z.B. eine Methode?
Zu Datentypen:
1. Warum werden bzw. können ausserhalb des Wertebereichs eines Datentyp liegende Zahlen trotzdem in dieses umgewandelt? Welchen Sinn hat dies? z.b byte m= (byte)200; oder m= 200y;
2. Warum ist bei den Ganzzahlendatentypen int,short,long und byte der Wertebereich im Positiven Bereich um 1 kleiner als im Negativen Bereich?
3. Warum ist folgendes eine wahre Aussage: System.out.println(2000000000F ==2000000000F+1);?
Zu Arrays:
1. Warum werden Arrays von Zahlen als UniCode dargestellt, obwohl sie doch nur eine Aneinanderreihung von Zahlen sind und diese ja nicht in UNicode umgewandelt werden?