Ganz dumme Fragen

Status
Nicht offen für weitere Antworten.

Player00

Mitglied
Moin bin neu hier und ein kompletter Java Newbie...

Ich habe ein paar verständnis Probleme und verstehe leider die erklärungen in meinem Buch net. Für Euch wird die beantwortung wenn ihr euch überhaupt die Mühe macht ein klacks.

1. Wo ist der Unterschied zwischen einer normalen Methode und einer Instanzmethode? Ich soll ein Programm mit Instanzmethoden schreiben;-(

2. Das gleiche für ne Variable.Ab wann ne Instanzvariable.

3. Kann mir mal einer sagen was genau Objekte sind?

Ich hab bestimmt noch mehr fragen...sorry wenn ich euc´h mit meiner Blödheit nerve. Wenn sich einer von euch doch die Mühe macht kann er es dann bitte echt für dumme erklären? Ist meine erste Sprache und verstehe net wirklich was davon;-(

Thanx schon mal Player
 
um es mal von hinten aufzurollen.

was eine klasse in java ist weist du (fuer mein beispiel: ein bauplan)
ein objekt ist die instanz einer klasse (fuer mein beispiel: ein haus)
eine instanzmethode/variable ist eine methode/variable die nur ueber eine instanz der klasse erreichbar ist

beispiel:
Code:
public class Bauplan 
 { 
	public static boolean fertig=false;// eine static variable 
	public boolean bewohnt=false;// eine instance variable 
 
	public static Bauplan baue() // eine static methode 
	{ 
	   Bauplan haus=new Bauplan(); 
	   fertig=true; 
	   return haus;    
	} 
 
	public void beziehen() // eine instancemethode 
	{ 
	   bewohnt=true; 
	} 
 
	public static void main(String[] args) 
	{ 
	   System.out.println("mein haus ist fertig ? "+Bauplan.fertig); 
	   System.out.println("dann baue ich mir ein haus"); 
	   Bauplan haus=Bauplan.baue(); 
	   System.out.println("mein haus ist bewohnt ? "+haus.bewohnt); 
	   System.out.println("dann jetzt ziehe ich ein"); 
	   haus.beziehen() ; 
	} 
 }
 
mmhhh...aber dann ist doch jede variable eine instanzvariable oder? Verstehe des net...

und du definierst ..boolean fertig=false;

dann ist die ausgabe Bauplan.fertig doch immer false oder net;-(

Ich bin echt ne null niete
 
nicht jede variable ist ne instanzvariable.

Um beim Bsp zu bleiben:
public static boolean fertig=false;// eine static variable
ist eine Klassenvariable. Sie gilt nicht nur für eine Instanz, sonder für alle Instanzen dieser Klasse !!

Solange die Variable fertig nicht geädert wird ist sie natürlich immer false, da sie aber public ist und eine Klassenvariable ist kann man z.B. über Bauplan.fertig = true sie ändern.... wäre sie keine Klassenvariable benötigt man eine Instanz der Klasse sie zu ändern (also new Bauplan().setFertig(true))....
 
wow erstmal echt nett das ihr mir helft ....;-)

Aber geht des alles
noch einfacher soviel kann ich noch gar net;-(

So richtig für dumme;-))
 
1. Wo ist der Unterschied zwischen einer normalen Methode und einer Instanzmethode? Ich soll ein Programm mit Instanzmethoden schreiben;-(

2. Das gleiche für ne Variable.Ab wann ne Instanzvariable.

3. Kann mir mal einer sagen was genau Objekte sind?

ok, ich versuchs nochmal 🙂

wahrscheinlich ist es am bestem mit 3. anzufangen.

Am Beispiel von mariopetr siehst du was eine Klasse ist (ich hoffe du weißt was das ist). Ein Objekt ist nun eine Instanz dieser Klasse.

D.h.
Code:
Bauplan haus=new Bauplan();
erschafft ein neues Objekt der Klasse Bauplan. Alle eigenschaften der klasse (z.b. Methoden) kannst du nun über dieses Objekt nutzen.

Objekte können nun Instanzvariablen / -methoden oder Klassenvariablen / - methoden besitzen. Der syntaktische Unterschied zwischen den beiden ist beim Deklarieren ist das Wörtchen 'static' (wenn du 'static' schreibst, handelt es sich um eine Klassenvar. / -methode), beim benutzen, dass du zum nutzen der einen (Instanzvar. / - methoden) eine Instanz der Klasse benötigst, bei der anderen nicht. Also die Methode 'beziehen' ist eine Instanzmethode, ansprechen kannst du sie über haus.beziehen.
Die Methode 'bauen' hingegen ist eine Klassenmethode, die du ansprechen kannst über Bauplan.baue() - du brauchst also keine Instanz der Klasse....

Ich rate dir z.B. das http://www.javabuch.de da steht alles wunderbar erklärt !!

PS: Übernehme mariopetr's code nicht zum testen, es sind ein paar Fehler drinnen.....
 
Mein Biolehrer hat immer gesagt: "Es gibt keine dummen Fragen. Es gibt nur Dumme, die fragen" :lol: :lol: :lol:

Kleiner Joke, nicht böse sein!
 
Witzbold!!!!
Wie wärs mit: "Es gibt keine dumme Fragen, nur dumme Antworten." Wie z.B. deine... :evil:
Und du hast es nicht mal :wink: gemeint.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben