Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo ich bin neu hier und lerne gerade Java an meiner Universität und wie ihr wisst ist es dort selbststängies lernen gefragt, dazu habe ich mir ein Buch ausgeliehen namens "Einstieg in Java 7" von Bernhard Steppan. Ich bin gerade im Kapitel Klasse und habe folgendes Programmm abgetippt und versucht zu verstehen:
Java:
//Beispielprogramme/Sprache_Java/Ex22
package language;
public class Jewelry {
private String value;
public Jewelry(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}
Java:
//Beispielprogramme/Sprache_Java/Ex23
package language;
public class Money {
private String value;
public Money(String value){
this.value = value;
}
public String getValue() {
return value;
}
}
Java:
//Beispielprogramme/Sprache_Java/Ex23
package language;
/* Diese Klasse demonstriert die neue Art der
Programmierung eines Containers mit generischen
Klassen. Der Rueckgabewert der Get-Methode ost
vom Typ "T". Erst im Hauptprogramm bei der
Erzeugung bestimmt das Programm den konkreten
Typ. Eine Typwandlung (Cast) muss deshalb nicht
durchgeführt werden. Die Verwendung einer Con-
tainer-Klasse wie Safe ist somit typischer.
*/
public class Safe<T> {
private T valueable;
public void setValueable(T valueable) {
this.valueable = valueable;
}
public T getValueable() {
return valueable;
}
public static void main(String[] args) {
Safe<Money> moneyBox = new Safe<Money>() ;
moneyBox.setValueable(new Money("400.53 Euro"));
Safe<Jewelry> jewelCase = new Safe<Jewelry>() ;
jewelCase.setValueable(new Jewelry("12 Ringe"));
System.out.println("In der Spardose sind: " + moneyBox.getValueable().getValue());
System.out.println("Im Schmuckkasten sind sind: " + jewelCase.getValueable().getValue());
}
}
Diese kann ich jedoch nicht ausführen. Er zeigt mir 6 Errors an. Ich benutzte den aktuellen JDK und lasse es immer im cmd in Windows 7 32-Bit ausführen. Er gibt mir immer aus:" cannot find symbol Safe<Money> moneyBox = New Safe<Money> (); kann mir vielleicht jmd helfen?
Auch wenn die "Puristen" jetzt Buh rufen: Installiere dir eine IDE (NetBeans, Eclipse, IntelliJ IDEA), mache ein neues Projekt auf, kopiere deine Klassen an die richtige Stelle (du must vorher ein Package language erstellen), und schau, was die IDE dazu sagt.
Der Aufwand lohnt sich: Du bekommst Fehler angezeigt, Autocompletion, Autoformat, einen komfortablen Debugger u.s.w.
Komisch. Habe innerhalb von Eclipse ein Package language erzeugt und alle Klassen angelegt und konnte den Code fehlerfrei ausführen. Sogar in der console kann man die Klassen in einem Folder namens language abgelegen, kompilieren und dann mit language.Safe aufrufen.
Hier ist der erzeugte Output:
In der Spardose sind: 400.53 Euro
Im Schmuckkasten sind sind: 12 Ringe