Statische und Nicht-Statische Methoden

Status
Nicht offen für weitere Antworten.

Dreezard

Bekanntes Mitglied
Hallo Leute. Ich wende mich heute zum ersten mal an euch.
Ich habe eine (garantiert) ziehmlich dumme Anfänger-Frage.
Ich habe mal so ein kleines Übungsprogramm geschrieben und meine 1000 Fehler rausbekommen.
Nur an einem scheitere ich. In Java scheint es wohl nicht möglich zu sein von einer statischen Methode zu einer nicht-statischen zu verweisen... Wie kann man das umgehen? Ok ich bezweifle dass man das kann, aber ich müsse mein "prog" dann ziehmlich umschreiben...
Warum kann man statische und nicht statische Methoden eigentlich nicht aufeinander verweisen?

Many thanks 4 your help!
 
B

bygones

Gast
statische Methoden sind Methode der Klasse, nicht-statische Methoden sind Methode einer Instanz einer Klasse.

Eine KlassenMethode bzw. eine Klassenvariable gilt für alle Instanzen einer Klasse, instanzmethoden bzw. instanzvariablen gelten nur für die aktuelle Instanz.

Daher kann eine statische Methode nicht eine nicht-statische Methode aufrufen, da sie sich in versch. Scopes befinden...

entweder alles statisch machen (nicht so gut) oder die statischen in nicht-statische Methoden umwandeln...
 

Dreezard

Bekanntes Mitglied
gut, das prinzip hab ich verstanden. thx.

Aus der main-Methode (und die ist bekanntlich statisch) eine nicht-statische aufzurufen, die einen text ausgibt, eine eingabe erwartet (ist ein Konsolenprogramm) und nach auswertung dieser eine Instanzvariable des Aufgerufenen Objektes setzt zu wollen ist also nicht möglich? Ich kann das schlecht in die main-methode schreiben, da ich einige methoden eingerichtet habe die sich untereinander aufrufen, da ja main, das ganze von oben nach unten abarbeitet...
 

akira

Bekanntes Mitglied
Hi,

Du könntest das in etwa so lösen:

Code:
public class MyClass {

    public static void main(String args[]) {
          MyClass instance = new MyClass();
          instance.hauptMethode();
    }


    private void hauptMethode() {
          //....
          andereMethode();
          //...
   }

    private void andereMethode() {
        // ....
        weitereMethode();
        // ....
    }

    private void weitereMethode() {
        // ....
    }
}
 

thE_29

Top Contributor
du könntest auch alle Funktionien static machen, dann brauchst du sie auch nicht mit deiner instanz.funktion() aufrufen!

also so:

Code:
public class MyClass {

    public static void main(String args[]) {
         hauptMethode();
    }


    public static void hauptMethode() {
          //....
          andereMethode();
          //...
   }

    public static void andereMethode() {
        // ....
        weitereMethode();
        // ....
    }

    public static void weitereMethode() {
        // ....
    }
}

du musst hatl deine variablen dann auch alle static machen!

Empfehlen würde ich dir sowas nicht, aber das du gesehen hast, dass das auch geht (und probieren kannst du es ja auch)!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Queiser Nicht statische Klassen Java Basics - Anfänger-Themen 6
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
C nicht statische Methoden Java Basics - Anfänger-Themen 4
R Methoden Nicht statische Methode aus Main aufrufen Java Basics - Anfänger-Themen 2
S Datentypen nicht lineare STATISCHE Datenstruktur? Java Basics - Anfänger-Themen 10
A Nicht-statische Methode in einer statischen aufrufen Java Basics - Anfänger-Themen 10
J Unterschied zwischen statische und nicht statische Methoden? Java Basics - Anfänger-Themen 14
E Statische Member können nicht vererbt werden? Java Basics - Anfänger-Themen 10
M Statische und nicht-statische Funktionen: Desktop.browse(uri); Java Basics - Anfänger-Themen 4
K nicht-statische Methode aufrufen Java Basics - Anfänger-Themen 3
T in statischem Kontext auf nicht statische Variable beziehen Java Basics - Anfänger-Themen 5
M öffentliche nicht-statische Funktion fremder Klasse ausführn Java Basics - Anfänger-Themen 16
P nicht statische methode instantiieren Java Basics - Anfänger-Themen 7
O nicht-statische Inhalte auf statische Inhalte verweisen Java Basics - Anfänger-Themen 19
F Statische Methode - Nicht Statische Methode Java Basics - Anfänger-Themen 10
J Die statische Main-Methode ändert Instanzvariable? Java Basics - Anfänger-Themen 10
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
V Variablen statische Variable einer Objektvariable zuordnen Java Basics - Anfänger-Themen 3
S Klassen statische Objekterzeugung vor Konstruktoraufruf??? Java Basics - Anfänger-Themen 6
D statische generische Methoden Java Basics - Anfänger-Themen 3
D Statische Variablen/Methoden Java Basics - Anfänger-Themen 3
S Zufallszahl (Statische Attribute und Methoden) Java Basics - Anfänger-Themen 10
N Auf statische Methode zugreufen Java Basics - Anfänger-Themen 9
F Privater Konstruktor und statische Methoden Java Basics - Anfänger-Themen 4
S ActionListener und Statische Variablen Java Basics - Anfänger-Themen 4
D Statische Objekte mit variablem Parameter Java Basics - Anfänger-Themen 1
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
F Statische Klasse => Flaschenhals? Java Basics - Anfänger-Themen 10
T Statische Arrays von Objekten Java Basics - Anfänger-Themen 2
S Java Fragen Konstruktor & Statische Methoden Java Basics - Anfänger-Themen 4
B Java Programm ohne statische Main Methode aufrufen Java Basics - Anfänger-Themen 5
E statische Variable ändert sich Java Basics - Anfänger-Themen 7
A Statische Variable in Methoden Java Basics - Anfänger-Themen 7
P Klassen statische oder dynamische(?) Klasse Java Basics - Anfänger-Themen 3
M Wann statische Methoden/Attribute? Java Basics - Anfänger-Themen 2
M Statische Methoden in Interface/Abstrakte Klasse Java Basics - Anfänger-Themen 6
J statische Methoden auf eine LinkedList initialisieren? Java Basics - Anfänger-Themen 5
A statische Arraylist Java Basics - Anfänger-Themen 6
Q Variablen Statische Variablen Java Basics - Anfänger-Themen 8
V OOP Statische Klassen-Attribute vererben Java Basics - Anfänger-Themen 4
K Statische Bindung Java Basics - Anfänger-Themen 6
B dynamische/statische Typen Java Basics - Anfänger-Themen 2
L Methoden Auf statische Methode einer anderen Klasse zugreifen, die Array zurückgibt Java Basics - Anfänger-Themen 3
S statische Methode nebenläufig Java Basics - Anfänger-Themen 2
R Aufruf statische Methode Java Basics - Anfänger-Themen 7
M Statische Methoden Java Basics - Anfänger-Themen 22
C Relativer Pfad - Statische Methode Java Basics - Anfänger-Themen 6
A Statische Methode "vererben" - Zwang durch annotation processor Java Basics - Anfänger-Themen 10
sqsh statische jlabels dynamisch verwalten Java Basics - Anfänger-Themen 2
S Statische Klassen/ Singleton Java Basics - Anfänger-Themen 13
F Generische Typen auch für statische Methoden? Java Basics - Anfänger-Themen 13
B statische Variable Java Basics - Anfänger-Themen 10
A Stilfrage: statische Methoden und Attribute auf jeden Fall verhindern? Java Basics - Anfänger-Themen 5
A Stilfrage: statische Variable mit Instanz der gleichen Klasse Java Basics - Anfänger-Themen 8
H Statische generische Methode Java Basics - Anfänger-Themen 2
A statische Attribute: Vererbung und Zugriff darauf Java Basics - Anfänger-Themen 15
hdi Observer als statische Klasse ? Java Basics - Anfänger-Themen 2
hdi statische synchronisation Java Basics - Anfänger-Themen 6
G statische ArrayList? Java Basics - Anfänger-Themen 8
K Statische Variablen von Objekten im Array Java Basics - Anfänger-Themen 15
S statische variable initialisieren mit exception Java Basics - Anfänger-Themen 2
G statische Variable zugreifen bzw. setzen Java Basics - Anfänger-Themen 6
M Statische Funktion Java Basics - Anfänger-Themen 2
C args[] als statische Variablen speicher oder wie? Java Basics - Anfänger-Themen 12
H statische methoden und sichtbarkeit Java Basics - Anfänger-Themen 13
nadoria statische Methoden (Klassenmethoden) Java Basics - Anfänger-Themen 3
K statische variablen und methode Java Basics - Anfänger-Themen 3
H Was ist nocheinmal eine statische Klasse? Java Basics - Anfänger-Themen 6
G Statische Methoden? Java Basics - Anfänger-Themen 2
kb statische methoden und throws exception Java Basics - Anfänger-Themen 2
H statische, dynamischer Typ von Variablen Java Basics - Anfänger-Themen 1
M Konstruktor eine statische Methode? Java Basics - Anfänger-Themen 9
H statische,dynamische Bindung Java Basics - Anfänger-Themen 4
N Unterschied statische Attribute u. Methoden <-> objekt Java Basics - Anfänger-Themen 4
M wann statische klassen? Java Basics - Anfänger-Themen 14
U statische Variablen Java Basics - Anfänger-Themen 12
S Statische Felder - statische Methoden Java Basics - Anfänger-Themen 2
K Statische Methoden!? Java Basics - Anfänger-Themen 8
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
D Regex greift nicht richtig Java Basics - Anfänger-Themen 4
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben