Cannot invoke Fehler aber wo?

newbie2009

Bekanntes Mitglied
Java:
class Int {
	double m_wert1 ;
	double m_wert2[]= new double[1];
	double m_wert3;
	
	
	Int(double wert1 ){
		m_wert1=wert1;
		
		
		
		
	}
	
	double  add(double k ){
		
		
		m_wert1 = m_wert1+ k;
		return m_wert1;
		
	}
}


public class UE8Aufgabe1 {
	
	public static void main(String[] args) {
		
		IO.println(new Int(8).add(IO.readDouble("geben sie DOI eine zahl ein")).add(-2));
	}

}

Also die Variablen sind noch nich alle belegt und der Array auch nich, brauch ich noch später:)
hmm mein problem ist eher , wenn ich die MEthode add(-2) aufrufe dann bekomme ich folgenden Fehler : cannot invoke add(int) to the primitive type double

Aber wenn die MEthode das erste mal funktioniert, warum nich das zweite mal?
Außerdem sind doch alle meine Variablen double werte .

Vielen Dank im Voraus
 
Zuletzt bearbeitet:
S

SlaterB

Gast
beim ersten Mal:
> new Int(8).add
wird add an einem Int-Objekt aufgerufen,

beim zweiten Mal

> new Int(8).add(...).add(-2)

am Rückgabewert von add, also double, double hat aber eine derartige Methode nicht, an double kann man gar nix aufrufen,
wie die Fehlermeldung zweifelsfrei sagt ;)
 

Gamma

Mitglied
Wahrscheinlich fasst er -2 als int auf versuch mal
Java:
//...
double zwei = 2.0;
//...
....add(-zwei)

oder die Methode add ist mit int festgelegt
genauso wie du folgendes nicht kannst
Java:
int Wurzelneun = Math.sqrt(9);
//Es muss nämlich so sein:
int Wurzelneun = (int) Math.sqrt(9);

MfG Gamma
 

newbie2009

Bekanntes Mitglied
Wahrscheinlich fasst er -2 als int auf versuch mal
Java Code: Quelltext in neuem Fenster öffnen

1
2
3
4



//...
double zwei = 2.0;
//...
....add(-zwei)


oder die Methode add ist mit int festgelegt
genauso wie du folgendes nicht kannst
Java Code: Quelltext in neuem Fenster öffnen

1
2
3



int Wurzelneun = Math.sqrt(9);
//Es muss nämlich so sein:
int Wurzelneun = (int) Math.sqrt(9);


MfG Gamma


funktioniert leider nicht aber danke @ gamma

double hat aber eine derartige Methode nicht, an double kann man gar nix aufrufen,
wie die Fehlermeldung zweifelsfrei sagt
@ Slater ab hier verstehe ich deine Begründung nicht ganz könntest du es vll näher erläutern.

danke
 
S

SlaterB

Gast
dein Code bedeutet in etwa
Java:
        Int x = new Int(8);
        double d = x.add(IO.readDouble("geben sie DOI eine zahl ein"));
        d.add(-2);
        IO.println(??);
Zeile 3 geht nicht, da willst du vielleicht x.add(-2); schreiben,
in einer Zeile ist das nicht zu machen, falls du nicht den Rückgabewert von add auf Int ändern willst
 

newbie2009

Bekanntes Mitglied
Java:
IO.println(new Int(8).add(IO.readInt()).add(-2))

also unsere Vorgabe sah so aus, und wir müssen das jetzt realisieren.

sprich ich habe einen Wert 8 dazu addiere ich mit der Methode eine beliebige zahl , und davon subtrahiere ich die 2 , also die vorgegebene Zeile muss sich nachher im Programm genauso später wiederfinden.


hmm vll ist das problem jetzt deutlicher geworden.:oops:
 
S

SlaterB

Gast
mir ist alles klar, ich wollte dir nur den Fehler erklären,

nun auch eine direkte Folgerung, eigentlich schon genannt:
der Rückgabewert von add muss anscheinend wirklich unbedingt das Int-Objekt sein, nicht double,

das hat auch mindestens eine andere Konsequenz, aber arbeite mal etwas alleine weiter
 

Michael...

Top Contributor
Java:
public static void main(String[] args) {
        IO.println(new Int(8).add(IO.readInt()).add(-2));
}
und weiter? Soll das noch was anderes passieren, als eine Zahl abzufragen?
 

newbie2009

Bekanntes Mitglied
Entwickeln Sie eine Klasse Int, so dass sich das Programm kompilieren lässt. Die Klasse Int soll dabei folgende Semantik haben:

Dem Konstruktor wird ein int-Wert übergeben, der intern gespeichert werden soll.

Bei Aufruf der Methode add für ein Int-Objekt soll der übergebene int-Wert zum internen int-Wert addiert und anschließend eine Referenz auf das Objekt selbst geliefert werden.

Die Methode makeString soll so implementiert werden, dass der interne int-Wert in seiner String-Repräsentation geliefert wird.

und weiter? Soll das noch was anderes passieren, als eine Zahl abzufragen?

habe schon überlegt, dass ich die methode so mache
Java:
	Int  add(Int k ){
		
		
		m_wert1= m_wert1 +k ;
		m_wert2[0]=m_wert1;
		return m_wert1;
		
	}
aber klappt auch nicht, weil er dann einen wert vom neuen Typ Int zurückliefert und die double Werte nich konvertieren kann ...
 

Michael...

Top Contributor
Java:
	Int  add(Int k ){
...
		m_wert1= m_wert1 +k ;
...
}
bei k handelt es sich um ein Objekt vom Typ Int und ich glaube nicht, dass man den '+' Operator darauf anwenden kann. Ich würde sagen, Du brauchst eher eine Methode
Java:
public void add(int k) {
oder
Java:
public Int add(int k) {
 

newbie2009

Bekanntes Mitglied
bei k handelt es sich um ein Objekt vom Typ Int und ich glaube nicht, dass man den '+' Operator darauf anwenden kann. Ich würde sagen, Du brauchst eher eine Methode
Java:
public void add(int k) {
oder
Java:
public Int add(int k) {



da hast du recht, hat der compiler auch rumgemeckert.

nun habe ich den tipp von slater noch mit eingebaut und habe folgendes programm nun :
Java:
class Int {
	double  m_wert1 ;
	
	
	
	
	Int(double wert1 ){
		m_wert1=wert1;
		
		
		
		
	}
	
	  public  Int  add(double  k ){
	        
	        
	        m_wert1= m_wert1 +k ;
	        
	        return this;
	        
	    }
		
	}



public class UE8Aufgabe1 {
	
	public static void main(String[] args) {
		
		
		
		IO.println(new Int(8).add(IO.readInt("geben sie DOI eine zahl ein")).add(2));
		
	}

}

Gebe ich jedoch eine Zahl ein, so bekomme ich werte wie Int@addbf1 , ich tippe der gibt jetzt einfach den Int wert von der 8 aus und so oder?
 
Zuletzt bearbeitet:
S

SlaterB

Gast
Int ist ein Objekt und wird es immer bleiben, da ist nix zu konvertieren,
du könntest entweder einen Wert abfragen, getMwert() aufrufen,
oder die toString() Methode überschreiben, dann wird genau das ausgegeben, was die Methode ansagt, wie im Lehrbuch zu lesen
 

newbie2009

Bekanntes Mitglied
erstmal danke für deine geduld :)
Aber ich programmier noch nich so lange objektorintiert .

nun ja ich komme aber glaube ich der sache langsam näher .

habe es jetzt mit der toString() methode versucht aber klappt immer noch nicht, liefert immer noch einen komiscschen wert sprich den Int@wert.


Java:
public class skript {
    
    public static void main(String[] args) {
    	
    	Int x= new Int(8);
    	    	Int obj = x;
    	        String s = obj.toString();
    	        System.out.println("String value is: = " + s);
    
    }
 
}
 

newbie2009

Bekanntes Mitglied
Vielen Dank slater :)

also ich war kurz vorm aufgeben :)
habe es aber dann doch noch geschafft .
Java:
class Int {
    static int m_wert1 ;				// eine static variable damit alle methoden, damit arbeiten können 
 
   
    Int(int wert1 ){					
        m_wert1=wert1;
    }
    
    

        
        

    
    Int  add(int k ){
        
    	m_wert1 = m_wert1+ k;
       return  this;
       
        
    }

    
    
 
    
    
    public String makeString( ){
  	  
  	  return Integer.toString(m_wert1) ;
  	}

   
  
}

 
 
public class skript {
    
    public static void main(String[] args) {
    
    	
    	
    	
    System.out.println(new Int(8).add(IO.readInt("geben sie einen Wert ein")).add(-2).makeString());
    }
 
}

vielen dank :)
 
S

SlaterB

Gast
das static unbedingt entfernen, läuft auch so
und sonst können nicht zwei verschiedene Int-Objekte ihren eigenen Zustand verwalten
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
jakobfritzz Array- cannot invoke "" because "" is null Java Basics - Anfänger-Themen 4
J Fehlermeldung : cannot invoke char(at) int on the primitive type int --- Anfänger Java Basics - Anfänger-Themen 5
B Cannot invoke.... Java Basics - Anfänger-Themen 16
W Cannot find Symbol Java Basics - Anfänger-Themen 5
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
D Cannot find JUnit.framework Java Basics - Anfänger-Themen 1
W Cannot resolve symbol 'HttpServlet' Java Basics - Anfänger-Themen 2
I JSON - cannot deserialize from Object value Java Basics - Anfänger-Themen 16
J Scanner cannot be resolved to a type Java Basics - Anfänger-Themen 3
N Fehler "Cannot instantiate the type" Java Basics - Anfänger-Themen 3
Flo :3 Variablen Type dismatch: cannot convert from string to int Java Basics - Anfänger-Themen 9
C system cannot be resolved Fehler in Eclipse Java Basics - Anfänger-Themen 18
V ClientProtocolException cannot be resolved Java Basics - Anfänger-Themen 6
A Cannot find symbol mit Konstruktoren Java Basics - Anfänger-Themen 27
A Cannot find symbol bei exceptions Java Basics - Anfänger-Themen 2
J The import org.bukkit cannot be resolved Java Basics - Anfänger-Themen 3
J Fehlermeldung unklar. non-static variable player0 cannot be referenced from a static context Java Basics - Anfänger-Themen 4
P non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 6
L cannot find symbol variable Kon Java Basics - Anfänger-Themen 8
L constructor cannot be applied... Java Basics - Anfänger-Themen 22
F Erste Schritte error: cannot find symbol Java Basics - Anfänger-Themen 5
M Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 10
P a cannot be resolved bei einer do while Schleife Java Basics - Anfänger-Themen 1
R return: cannot find symbol Java Basics - Anfänger-Themen 2
L Bluej Error: Cannot find Symbol Java Basics - Anfänger-Themen 13
Aprendiendo Interpreter-Fehler "non-static variable this cannot be referenced from a static context" Java Basics - Anfänger-Themen 2
M Iterator cannot refer to a non final... Java Basics - Anfänger-Themen 20
S Cannot find symbol (symbol ist eine Variable) Java Basics - Anfänger-Themen 13
N Cannot find symbol Java Basics - Anfänger-Themen 18
T Error: int cannot be dereferenced Java Basics - Anfänger-Themen 10
J JLabel cannot be resolved Java Basics - Anfänger-Themen 8
H Variablen error: non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 4
P Cannot find symbol, wieso? Java Basics - Anfänger-Themen 5
UnityFriday method getPrevious in class List<ContentType> cannot be applied to given types Java Basics - Anfänger-Themen 29
M Erste Schritte cannot find symbol - Probleme mit Klassen Java Basics - Anfänger-Themen 6
B OOP next cannot be resolved or is not a field Java Basics - Anfänger-Themen 6
B OOP Cannot instantiate the type AuDList<Integer> Java Basics - Anfänger-Themen 18
U Erste Schritte cannot be referenced from a static context Java Basics - Anfänger-Themen 1
J Error: cannot find symbol - variable Java Basics - Anfänger-Themen 3
D Java Eclipse cannot be cast to java.awt.event.ItemListener Java Basics - Anfänger-Themen 3
F Erste Schritte parseint: cannot find symbol Java Basics - Anfänger-Themen 6
M Erste Schritte [Variable] cannot be resolved to a variable Java Basics - Anfänger-Themen 4
M The Selection cannot be launched... Java Basics - Anfänger-Themen 4
M Vererbung - Cannot Find Symbol constructor... Java Basics - Anfänger-Themen 11
D error: cannot find symbol Java Basics - Anfänger-Themen 3
B Frage zu Beispielprogramm: "error: cannot find symbol" Java Basics - Anfänger-Themen 2
M Methoden Cannot be resolved to a variable Java Basics - Anfänger-Themen 5
BlueMountain Erste Schritte error: cannot find symbol Java Basics - Anfänger-Themen 2
P enum: cannot be resolved to a type Java Basics - Anfänger-Themen 2
W Compiler-Fehler "non-static method cannot be referenced"-Problem Java Basics - Anfänger-Themen 6
L Error: Cannot find symbol Java Basics - Anfänger-Themen 1
W int cannot be dereferenced Java Basics - Anfänger-Themen 5
P Cannot find Symbol Java Basics - Anfänger-Themen 3
K Compiler-Fehler Button cannot be resolved or is not a field Java Basics - Anfänger-Themen 6
F Methoden Cannot refer to a non-final variable.. verständnisproblem. Java Basics - Anfänger-Themen 7
A Cannot make a static reference to the non-static field Java Basics - Anfänger-Themen 6
K The Java Runtime Environment cannot be found. Java Basics - Anfänger-Themen 6
F Input/Output IOTools Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 16
L Cannot Find Symbol - Was soll denn das bedeuten?!? Java Basics - Anfänger-Themen 7
P StdIn.readDouble: cannot find symbol Java Basics - Anfänger-Themen 7
B Fehler "Cannot find symbol - variable number1" Java Basics - Anfänger-Themen 13
P Variablen Cannot be resolved to a variable Java Basics - Anfänger-Themen 8
B Compiler-Fehler cannot find symbol Java Basics - Anfänger-Themen 6
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
M Methoden "Non-static method xy cannot be referenced from a static context" Java Basics - Anfänger-Themen 20
T Cannot convert from Integer to int Java Basics - Anfänger-Themen 12
K Cannot find symbol Java Basics - Anfänger-Themen 3
H cannot find symbol Java Basics - Anfänger-Themen 4
K Objekt erstellen - error: non-static variable this cannot be referenced from a static context Java Basics - Anfänger-Themen 17
S cannot find symbol, symbol: constructor Java Basics - Anfänger-Themen 2
3 Compiler-Fehler Fehlerbehebung cannot find Symbol Java Basics - Anfänger-Themen 4
R Compiler-Fehler Cannot find symbol (Method printIn) Java Basics - Anfänger-Themen 3
H non-static method cannot be referenced from a static context Java Basics - Anfänger-Themen 2
M Meldung "cannot convert flom boolean to boolean[]" Java Basics - Anfänger-Themen 3
L Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 6
B Polymorphie A obj = new B; "cannot find symbol app()" Java Basics - Anfänger-Themen 5
S wieso Fehlermeldung cannot find symbol hier Java Basics - Anfänger-Themen 10
K Variablen Cannot make a static reference to the non-static field time Java Basics - Anfänger-Themen 6
T Cannot refer to an instance field xxx while explicitly invoking a constructor Java Basics - Anfänger-Themen 14
T Cannot find Symbol(String) Java Basics - Anfänger-Themen 9
C cannot convert from int to boolean Java Basics - Anfänger-Themen 3
2 Compiler-Fehler cannot find symbol Java Basics - Anfänger-Themen 13
N Erste Schritte import javax.media.3d....; //Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 10
B Erste Schritte cannot find symbol - problem Java Basics - Anfänger-Themen 9
P Compiler-Fehler Cannot make a static reference to the non-static field process Java Basics - Anfänger-Themen 3
K int cannot be dereferenced Java Basics - Anfänger-Themen 2
H LocationReferenceImpl cannot be resolved to a type Java Basics - Anfänger-Themen 5
D Cannot find symbol variable Java Basics - Anfänger-Themen 9
A Compiler-Fehler Cannot find Symbol Java Basics - Anfänger-Themen 6
M Objekt Cannot instantiate the type ... Java Basics - Anfänger-Themen 10
V Datentypen int cannot be dereferenced Java Basics - Anfänger-Themen 4
R Compiler-Fehler sequenz cannot be resolved or is not a field Java Basics - Anfänger-Themen 2
V Packages: Cannot find symbol Java Basics - Anfänger-Themen 12
G Collections.binarySearch(LinkedList): cannot find method Java Basics - Anfänger-Themen 6
M Datentypen java.util.Arrays$ArrayList cannot be cast to [Ljava.lang.String; Java Basics - Anfänger-Themen 11
T Cannot be resolved to a variable Java Basics - Anfänger-Themen 8
E Klassen ClassCastException bei gleichnamigem: paket.klasse cannot be cast to paket.klasse Java Basics - Anfänger-Themen 10
C i cannot be resolved (obwohl es im schleifekopf initialisiert worden ist) Java Basics - Anfänger-Themen 2
W Compiler-Fehler variable cannot be resolved / duplicate local variable Java Basics - Anfänger-Themen 11
C Fehlermeldung "The import TestProjekt cannot be resolved". Warum? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben