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
I Backend in Java und Ansicht von Dateien in statische HTML Seiten? Java Basics - Anfänger-Themen 15
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
W Sieht jemand was, was ich nicht sehe...? (Debugging) Java Basics - Anfänger-Themen 10
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 1
A Signierte Exe Datei funktioniert nicht mehr Java Basics - Anfänger-Themen 3
C my_table.setRowSelectionAllowed(true) funktioniert nicht; Java Basics - Anfänger-Themen 0
B Warum funktioniert die Lösung von CodeGym aber meine nicht? Java Basics - Anfänger-Themen 3
P Wo NUR (!) JRE v18 oder v21 herunterladen? Also nicht volles JDK Java Basics - Anfänger-Themen 1
J shuffle cards wird nicht ausgeführt. Java Basics - Anfänger-Themen 2
J JTextField -> CaretPos bei SelectionStart() setzten nicht bei SelectionEnd() Java Basics - Anfänger-Themen 20
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 45
I Webservice funktioniert nicht Java Basics - Anfänger-Themen 5
C Abbruch einer Schleife mit break, meine Übung funktioniert nicht richtig Java Basics - Anfänger-Themen 4
SarahXyy Ergebnisse stimmen nicht überein? Java Basics - Anfänger-Themen 11
thomas55 Erste Schritte Modul läuft in IntelliJ, nicht in NetBeans Java Basics - Anfänger-Themen 11
G Nicht ausführbares JAR, externe jars mit einbinden Java Basics - Anfänger-Themen 7
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
O Obfuscateter Code lässt sich nicht ausführen? Java Basics - Anfänger-Themen 7
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
G Regex greift nicht richtig Java Basics - Anfänger-Themen 4
G JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben