Methoden Cannot refer to a non-final variable.. verständnisproblem.

Fesker

Mitglied
Heyho, so ganz raff ichs in Java nicht, ab wann welche Variablen für wen oder was öffentlich und zugreifbar sind ......

In Pascal, Basic, C++ wars immer ganz leicht.. public hieß tatsächlich public für alles und jeden..
Und hier spiele ich dauernd mit private, final, public rum, ohne eigentlich den Sinn dahinter zu verstehen und stecke hier fest:

Java:
public class MainWindow extends JFrame {

	private JPanel contentPane;
	
	public MainWindow() {
		
		List<SolarSystem> galaxy;
    	galaxy = new LinkedList<SolarSystem>();
    	
    	final DefaultListModel systemListModel;
    	final DefaultListModel planetListModel;
    		systemListModel = new DefaultListModel();
    	 	planetListModel = new DefaultListModel();
    	 final JList planetList = new JList(planetListModel);
    	 			 planetList.setBorder(null);
    	 final JList sysList    = new JList(systemListModel);
    	 			 sysList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 497, 387);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
				
		JDesktopPane desktopPane = new JDesktopPane();
		contentPane.add(desktopPane);
		
		JInternalFrame SystemFrame = new JInternalFrame("Bekannte Systeme");
		SystemFrame.setBounds(0, 0, 200, 300);
		desktopPane.add(SystemFrame);
		
		JInternalFrame PlanetFrame = new JInternalFrame("Enthaltene Planeten");
		PlanetFrame.setLocation(209, 0);
		PlanetFrame.setSize(252, 328);
		desktopPane.add(PlanetFrame);
		
		
		sysList.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseReleased(MouseEvent arg0) {
				int selected = sysList.getSelectedIndex();
				
				for (int i=0; i<selected;i++){
		    	planetListModel.addElement(galaxy.get(selected).getPlanet(1).getName());		    	
				}
			}
		});
		
			
		ScrollPane scrollPane = new ScrollPane();	
		PlanetFrame.getContentPane().add(scrollPane, BorderLayout.CENTER);
		scrollPane.add(planetList);
		
		SystemFrame.getContentPane().add(sysList);
		SystemFrame.show();
		PlanetFrame.show();
				
        ////
		Random iRandom = new Random();
    	
		// Systeme generieren
    	for (int i=0;i<10;i++){
    		galaxy.add(new SolarSystem(iRandom.nextInt(10)));
    		
    			for (int z=0; z<iRandom.nextInt(10);z++)
    			{
    				galaxy.get(i).addPlanet(new Planet(iRandom.nextInt(10), iRandom.nextDouble()));
    				Planet p = galaxy.get(i).getPlanet(z);
    				System.out.println(p.getName() + ", mass: " + p.getMass() + ", type: " + p.getType() + ", distance: " + p.getDistance());
    			    //planetListModel.addElement(galaxy.get(i).getPlanet(z).getName());
    			}	
    		System.out.println(galaxy.get(i).getPlanetCount());
    		systemListModel.addElement(galaxy.get(i).getName());
    	}

    	 	 	    
	}
	
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					MainWindow frame = new MainWindow();
					frame.setVisible(true);
					
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}
}

im sysList.MouseListener sagt er mir, "Cannot refer to a non-final variable galaxy inside an inner class defined in a different method"
Ist für euch sicher eindeutig, ich kapiers aber nicht.
Wenn ich dann ein final vor galaxy setze, spuckt er mir ja oben auch wieder eine Fehlermeldung aus.

Schließlich funktionierts ja weiter unten auch ähnlich in einer For-Schleife, die mir eine JLIst mit 10 Werten füllt. Und da ist galaxy auch nicht final. :shock:

Weiß jemand Rat?
Grüße!
 

knilch

Bekanntes Mitglied
Hi,
Also zu Deinem Posting:
In Pascal, Basic, C++ wars immer ganz leicht.. public hieß tatsächlich public für alles und jeden..
....
gleich wie in C++ gibt es private und public Methoden, sowie Variablen

private: Variable / Methode die nur innerhalb einer Klasse verfügbar ist
public: Variable / Methode die auch asserhalb einer Klasse verfügbar ist
final: Konstante
static: Klassenvariable / Klassenmethode


Und hier spiele ich dauernd mit private, final, public rum, ohne eigentlich den Sinn dahinter zu verstehen und stecke hier fest:

poste doch mal die SolarSystem und die Planet Klassen. So kann man sicher besser sehen, wo es liegen könnte..

Gruss
knilch
 
Zuletzt bearbeitet:

rme

Top Contributor
Es liegt hier daran, dass innere Klassen verwendet werden - ein Konzept, das es in C++ gar nicht gibt. In Zeile 39 wird beispielsweise eine anonyme, innere Klasse erzeugt, die von MouseAdapter erbt. Der Java-Compiler kann nun nicht wissen, was in der inneren Klasse alles passiert - es könnte zum Beispiel ein Thread gestartet werden, der länger läuft, als die Methode lebt, in der die Klasse erzeugt wurde. Deshalb muss die Lebensdauer der Objekte, die in der inneren Klasse benutzt werden, künstlich erhöht werden. Dazu muss der Compiler aber sicher sein, dass sie konstant sind - sonst wäre es möglich, dass plötzlich zwei unterschiedliche Referenzen für die gleiche Variable vorhanden sind.

Das Problem tritt nicht auf, wenn die Variablen Instanzvariablen sind. Denn dort leben die Variablen sowieso über die Lebensdauer einzelnen Methode hinaus.
 
Zuletzt bearbeitet:

Fesker

Mitglied
Danke schon mal für die Antworten.
Ich habe Java Blog Buch : 04.10 Innere Klassen gelesen, und das ergibt auch irgendwo etwas Sinn. Jedoch kann ichs in meinem Code irgendwie nicht ganz verstehen, denn ich hab doch bei mir keine innere Klasse mittels "class" definiert. (HÄ?) ^^

Also wenn ich eine MouseAdapterfunktionsmethode habe, wird diese zur Klasse?.. :bloed:
Nun ja, so bräuchte ich dann doch eine Möglichkeit um aus dieser Klasse "herauszutelefonieren"
Laut der besagten Seite dann irgendwas mit
Code:
MainWindow.this.galaxy
....?

Verstehe hier tatsächlich nur Bahnhof.
Und von mir aus, poste ich gern nochmal die drei Klassen:

MainWindow
Java:
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.util.LinkedList;
import java.util.List;
import java.util.Random;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.DefaultListModel;
import javax.swing.JList;
import javax.swing.JComboBox;
import javax.swing.JDesktopPane;
import javax.swing.border.BevelBorder;
import java.awt.Color;
import javax.swing.JInternalFrame;
import javax.swing.ListSelectionModel;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.UIManager;
import java.awt.ScrollPane;

public class MainWindow extends JFrame {

	private JPanel contentPane;
	
	public MainWindow() {
		
		List<SolarSystem> galaxy;
    	galaxy = new LinkedList<SolarSystem>();
    	
    	final DefaultListModel systemListModel;
    	final DefaultListModel planetListModel;
    		systemListModel = new DefaultListModel();
    	 	planetListModel = new DefaultListModel();
    	 final JList planetList = new JList(planetListModel);
    	 			 planetList.setBorder(null);
    	 final JList sysList    = new JList(systemListModel);
    	 			 sysList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 497, 387);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
				
		JDesktopPane desktopPane = new JDesktopPane();
		contentPane.add(desktopPane);
		
		JInternalFrame SystemFrame = new JInternalFrame("Bekannte Systeme");
		SystemFrame.setBounds(0, 0, 200, 300);
		desktopPane.add(SystemFrame);
		
		JInternalFrame PlanetFrame = new JInternalFrame("Enthaltene Planeten");
		PlanetFrame.setLocation(209, 0);
		PlanetFrame.setSize(252, 328);
		desktopPane.add(PlanetFrame);
		
		
		sysList.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseReleased(MouseEvent arg0) {
				int selected = sysList.getSelectedIndex();
				
				for (int i=0; i<selected;i++){
		    	planetListModel.addElement(galaxy.get(selected).getPlanet(1).getName());		    	
				}
			}
		});
		
			
		ScrollPane scrollPane = new ScrollPane();	
		PlanetFrame.getContentPane().add(scrollPane, BorderLayout.CENTER);
		scrollPane.add(planetList);
		
		SystemFrame.getContentPane().add(sysList);
		SystemFrame.show();
		PlanetFrame.show();
				
        ////
		Random iRandom = new Random();
    	
		// Systeme generieren
    	for (int i=0;i<10;i++){
    		galaxy.add(new SolarSystem(iRandom.nextInt(10)));
    		
    			for (int z=0; z<iRandom.nextInt(10);z++)
    			{
    				galaxy.get(i).addPlanet(new Planet(iRandom.nextInt(10), iRandom.nextDouble()));
    				Planet p = galaxy.get(i).getPlanet(z);
    				System.out.println(p.getName() + ", mass: " + p.getMass() + ", type: " + p.getType() + ", distance: " + p.getDistance());
    			    //planetListModel.addElement(galaxy.get(i).getPlanet(z).getName());
    			}	
    		System.out.println(galaxy.get(i).getPlanetCount());
    		systemListModel.addElement(galaxy.get(i).getName());
    	}

    	 	 	    
	}
	
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					MainWindow frame = new MainWindow();
					frame.setVisible(true);
					
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}
}
SolarSystem
Java:
import java.util.*;
public class SolarSystem {

	public  int 	sunType;
	private String  name;
	
	private final List<Planet> planets;
	 
	    // constructor to create an empty solar system
		public SolarSystem(int iSunType) {
			this.sunType 		 = iSunType;
			this.planets		 = new LinkedList<Planet>();
			this.name            = GenerateName();
		}
		
		private String GenerateName() // Wie der Name schon sagt...
		{
			String    sAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			String    sName = "SYS ";			
			Character cRandChar;			
			Random iRandom = new Random();
			                 
			// 2 Anfangsbuchstaben ausdenken
			for (int i = 0; i < 2; i++) 
			{
				cRandChar = sAlphabet.charAt(iRandom.nextInt(sAlphabet.length()));
				sName = sName + cRandChar;
			}			
			// 3 Nummern hinzufügen
			sName = sName + "-" + Integer.toString(iRandom.nextInt(899)+100);
		
			return sName;
		}
	   	 
	    // add a given planet to this solar system
	    public void addPlanet(Planet p) {
	        planets.add(p);
	    }
	 
	    // retrieve number of planets in this solar system
	    public int getPlanetCount() {
	        return planets.size();
	    }
	 
	    // retrieve a planet given by its index, 0 <= i < planetCount
	    public Planet getPlanet(int i) {
	        return planets.get(i);
	    }
	    
	    public String getName(){
	    	return name;
	    }
}
Planet
Java:
import java.util.*;
public class Planet {
	
	private Integer type,             // RandomNumber, converted later to Terran, Water, Gas....
	                distance,         // DistanceToSun
	                temperature;      // Average temperature based on Distance
	        
	private String  name;             // Planet's Name      
	
    private final double mass;
	     
    // construct a new planet with given attributes
    public Planet(int type, double mass) {
        this.type = type;
        this.name = GenerateName();
        this.mass = mass;
		this.distance = GenerateDistance();
    }
 
    public String getName() {
        return name;
    }
 
    public double getMass() {
        return mass;
    }
 
    public int getType() {
        return type;
    }
    
    public int getDistance() {
    	return distance;
    }
	
	private String GenerateName() // Wie der Name schon sagt...
	{
		String    sAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		String    sName = "";
		Character cRandChar;		
		Random iRandom = new Random();
		                 
		// 3 Anfangsbuchstaben ausdenken
		for (int i = 0; i < 3; i++) 
		{
			cRandChar = sAlphabet.charAt(iRandom.nextInt(sAlphabet.length()));
			sName = sName + cRandChar;
		}		
		// Und Nummern hinzufügen
		sName = sName + "-" + Integer.toString(iRandom.nextInt(899)+100);
		return sName;
	}
	
	private int GenerateDistance() 
	{
		Random iRandom = new Random();
		distance = iRandom.nextInt(50)+5;
		return distance;
	}
}

Ich versuchs halt alles über LinkedLists, die doch eigentlich nicht konstant sein dürften, so wie die Fehlermeldung es meiner Meinung nach verlangt.
Die MainWindow-Class ist vielleicht etwas durcheinander, weil Eclipse da öfter mal etwas verwurschtelt, wenn ich mit dem WindowBuilder arbeite.
Aber vielleicht weiß ja jemand hier weiter, davon bin ich überzeugt. =)

Grüße!
 
Zuletzt bearbeitet:

rme

Top Contributor
Also wenn ich eine MouseAdapterfunktionsmethode habe, wird diese zur Klasse?..

Richtig, an dieser Stelle schon:

Java:
sysList.addMouseListener(new MouseAdapter() {
   ...
});

Das erzeugt dynamisch eine anonyme, innere Klasse. Der Teil, den ich mit ... gekürzt habe, kann Instanvariablen, Methoden usw. enthalten. Das "Heraustelefonieren" machst du bereits, indem du auf die Variablen der umgebenden Methode (müssen dann final sein) oder der Klasse zugreifst (müssen nicht final sein). Explizit angeben muss man den Namen der äußeren Klasse nur, falls es mehrdeutige Namen gibt.
 

Fesker

Mitglied
Okay danke, habs geschnallt, denke ich.
Aber wie kann ich dann von dort aus auf "galaxy" zugreifen? :)
Bei den anderen Variablen scheints auch ohne Weiteres zu funktionieren.

Das Programm läuft ja soweit, außer wenn ich in meiner JList irgendein Element anklicke, dann schmeißt er halt den Fehler.
Ist gerade sehr frustrierend.
 

rme

Top Contributor
galaxy muss final sein, dazu müssen Deklaration und Definiton gleichzeitig passieren:

Java:
final List<SolarSystem> galaxy = new LinkedList<SolarSystem>();

final bedeutet nicht, dass der Inhalt konstant bleibt - das geht in C++, aber in Java leider nicht. final bedeutet nur, dass galaxy die ganze Zeit auf dieselbe Liste verweist - dass sich deren Inhalt ändert, ist völlig in Ordnung.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Iterator cannot refer to a non final... Java Basics - Anfänger-Themen 20
M Cannot refer to a non-final variable Java Basics - Anfänger-Themen 10
T Cannot refer to an instance field xxx while explicitly invoking a constructor Java Basics - Anfänger-Themen 14
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
jakobfritzz Array- cannot invoke "" because "" is null Java Basics - Anfänger-Themen 4
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
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
J Fehlermeldung : cannot invoke char(at) int on the primitive type int --- Anfänger Java Basics - Anfänger-Themen 5
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
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 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
R Cannot find a free socket for the debugger Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben