hi Leute,
wenn ich falsche instancen gebe werden keine felermeldung gegeben. wo mache ich fehler?
es ist auch in der angabe : Das Produkt wird durch eine aus zehn Großbuchstaben, Ziffern und Leerzeichen bestehende Kurzbezeichnung eindeutig identifiziert.
wäre diese Asudrück korrekt?
wenn ich falsche instancen gebe werden keine felermeldung gegeben. wo mache ich fehler?
es ist auch in der angabe : Das Produkt wird durch eine aus zehn Großbuchstaben, Ziffern und Leerzeichen bestehende Kurzbezeichnung eindeutig identifiziert.
wäre diese Asudrück korrekt?
Java:
if(!bezeichnung.matches("[A-J]\\d\\s ")){
throw new Exception("FEHLER");
}
Java:
public class Produkt {
private String bezeichnung;
private int preis;
private int anzahl;
public Produkt(String bezeichnung, int preis, int anzahl) throws Exception {
setAnzahl(anzahl);
setBezeichnung(bezeichnung);
setPreis(preis);
}
public void setAnzahl(int anzahl)throws Exception{
if(anzahl < 0){
throw new Exception("Produkteanzahl darf nicht unter 0 sein");
}
this.anzahl = anzahl;
}
public int getAnzahl(){
return anzahl;
}
public void setBezeichnung(String bezeichnung)throws Exception{
if(bezeichnung == null){
throw new Exception("bezeichnung darf nicht nul sein");
}
this.bezeichnung = bezeichnung;
}
public void stueckZahlaendern(String bezeichnung, int anzahl) throws Exception{
if(!this.bezeichnung.equals(bezeichnung)){
throw new Exception("FEHLER");
}
this.anzahl = anzahl;
}
public String getBezeichnung(){
return bezeichnung;
}
public void setPreis(int preis)throws Exception{
if(preis < 1){
throw new Exception("Preis muss mehr als 1 cent sein");
}
this.preis = preis;
}
public int getPreis(){
return preis;
}
public boolean equals(Object obj){
if(obj instanceof Produkt){
Produkt p = (Produkt) obj;
return p.bezeichnung.equals(bezeichnung);
}
return false;
}
public String toString(){
StringBuilder builder = new StringBuilder();
return builder.append(bezeichnung).append(", ").append(anzahl).append(" Stueck ,").append(preis).append(" cent/stueck").toString();
}
}
Java:
public class Main {
public static void main(String args[]) {
try{
Produkt p1 = new Produkt("Z123 ", 0, 10);
//p1.stueckZahlaendern("", 5);
System.out.println(p1.toString());
}catch(Exception e){
e.getMessage();
}
}
}