Hallo ihr Lieben,ich habe folgendes Problem:
ich möchte in einer Klasse 2 Methoden überschreiben und den Rest so übernehmen.
Aber wenn ich das Programm ausführe benutzt das Programm immer noch die alte Methode
Hier meine Codes
1.
hier sagt mir die Fehlermeldung, dass die Rechenarten static sein sollen,
in der Klasse Taschenrecher 1
2.
wenn ich die methoden aber in dieser Klasse static mache kann ich sie ja nicht mehr überschreiben wenn ich sie im taschenrechner 2 benutzen möchte!!??
3.
und in dieser klasse überschreibt er die Methode addition nicht und sagt mir bei der subtraction das void unzulässig ist.
Ich weiss nicht wo mein Fehler liegt!
Bind dankbar für jede Hilfe???:L
ich möchte in einer Klasse 2 Methoden überschreiben und den Rest so übernehmen.
Aber wenn ich das Programm ausführe benutzt das Programm immer noch die alte Methode
Hier meine Codes
1.
Java:
import java.util.Scanner;
public class eingabe2 extends Taschenrechner1 {
double i;
double j;
double a;
public void static benutzerEingabe() {
Scanner sc = new Scanner(System.in);
System.out.println ("Bitte geben sie eine Zahl ein: " );
double i= sc.nextInt();
System.out.println ("Bitte geben sie eine Zahl ein: " );
double j = sc.nextInt();
System.out.println ("Bitte geben sie einen Rechneoperator ein:" );
System.out.println ("1 = Addieren; 2 = Subtraktion; 3 = Multiplikation; 4 = Division; 5 = Prozent; 6 = Potenz: " );
double a = sc.nextInt();
if ( a==1){
addition( i, j);
}
else if (a==2){
subtraction(i, j);
}
else if (a==3){
multiplikation(i, j);
}
else if (a==4 ){
division(i, j);
}
else if (a == 5){
prozent(i, j);
}
else if (a== 6){
potenz(i, j);
}
else if (a > 6){
System.out.println("Ihre Eingabe ist ungültig");
}
}
public static void main(String[] args) {
benutzerEingabe();
}
}
in der Klasse Taschenrecher 1
2.
Java:
public class Taschenrechner1 {
public void addition (double i, double j) {
System.out.println ("Das Ergebniss lautet " +i+ "+" +j+ "="+(i+j));
};
public void subtraction(double i, double j) {
System.out.println ("Das Ergebniss lautet " +i+ "-" +j+ "="+(i-j));
};
public void division (double i, double j) {
System.out.println ("Das Ergebniss lautet " +i+ "/" +j+ "="+(i/j));
};
public void multiplikation (double i, double j) {
System.out.println ("Das Ergebniss lautet " +i+ "*" +j+ "="+(i*j));
};
public void prozent (double i, double j) {
System.out.println ("Das Ergebniss lautet " +i+ "%" +j+ "="+(i/100*j));
};
public void potenz(double i, double j){
System.out.println("Das Ergebniss lautet:" +i+ " hoch " +j+"=" +Math.pow(i,j));
};
public static void main(String[] args) {
}
}
3.
Java:
public class taschenrechner2 extends eingabe2 {
@Override
public void addition(i,j){
if((i-j)>=0){
System.out.println("Das Ergebniss lautet:" +i+ "+"+j+ "=" +(i-j));
}
else if((i-j)<=0){
System.out.println("Das Ergebniss lautet:" +i+ "-"+j+ "=" +(-(i-j)));
}
@Override
public void subtraction(double i, double j); {
System.out.println ("Das Ergebniss lautet " +c+ "-" +d+ "="+(i+j));
};
}
Ich weiss nicht wo mein Fehler liegt!
Bind dankbar für jede Hilfe???:L
Zuletzt bearbeitet: