Wie kann ich etwas vor der Main-Methode ausführen?

byRacky

Mitglied
Hallo zusammen,

ich würde gerne wissen, ob es eine Möglichkeit gibt, etwas vor der Main-Methode auszuführen, anders gesagt, gibt es bei dem Folgendem Programm Code eine Möglichkeit, dass der Code funktioniert, ohne das ich etwas an der Main Methode ändere?
Ich hoffe auf Antworten, danke.


Code:
public class Mann {
   
     int größe;
     int gewicht;

   
     public static void main(String[] args) {
    
      int bmi = berechneBMI(größe,gewicht); 
       
    }
    
     int berechneBMI(int größe,int gewicht){
         return (1);
     }
}
 
Zuletzt bearbeitet von einem Moderator:

mrBrown

Super-Moderator
Mitarbeiter
Ja, man kann etwas vor der Main-Methode ausführen, und Nein, das will man nahezu nie ;)

In dem Code müsste man auch nicht wirklich „Code ausführen“, den Fehler, den der Compiler meldet zu beheben reicht erstmal.
 
B

BestGoalkeeper

Gast
Such mal nach static initializer block, aber das beantwortet deine Frage noch nicht. Der Code müsste zunächst semantisch/syntaktisch korrekt sein.
 

temi

Top Contributor
Ein kleiner Tipp nebenbei noch: Vermeide in deinen Programmen die deutschen Umlaute. Das kann zu Problemen führen. Also anstatt von "größe" ist die bessere Lösung "groesse". Möglicherweise ist es aber auch sinnvoll, sich gleich an Englisch zu gewöhnen, weil das in der Softwareentwicklung Standard ist => "size".

Ansonsten, ja - du kannst an der Klasse etwas ändern, um die gegebene main() ausführen zu können. Schau dir dazu an, was der Compiler als Fehler meldet und frag nach, wenn du nicht weiter kommst.

Such mal nach static initializer block
Danach solltest du erst mal nicht suchen, weil das für dich hier nicht relevant ist und dich evtl. nur verwirrt.

Aber das hat @BestGoalkeeper auch dazu geschrieben, dass es deine Frage nicht beantworten wird.
 
Zuletzt bearbeitet:
B

BestGoalkeeper

Gast
[CODE lang="java" highlight="3-8, 16"]public class Mann {

static int größe;
static int gewicht;
static {
größe = 2;
gewicht = 80;
}

public static void main(String[] args) {

int bmi = berechneBMI(größe, gewicht);

}

static int berechneBMI(int größe, int gewicht) {
return (1);
}
}[/CODE]
Das sind die minimalen, vorzunehmenden Änderungen. LG! :)
 

tommysenf

Top Contributor
[CODE lang="java" highlight="3-4, 12"]public class Mann {

static int größe = 2;
static int gewicht = 80;

public static void main(String[] args) {

int bmi = berechneBMI(größe, gewicht);

}

static int berechneBMI(int größe, int gewicht) {
return (1);
}
}
[/code]

Das sind die minimaleren minimalen, vorzunehmenden Änderungen. LG! :)
 
Zuletzt bearbeitet von einem Moderator:
B

BestGoalkeeper

Gast
Naja aber er hat explizit danach gefragt, wie er Code vor der main ausführen kann...
 

temi

Top Contributor
Muss man den beiden statischen Klassenvariablen eigentlich einen initialen Wert zuweisen? Die Methode gibt ja sowieso immer 1 zurück
 
K

kneitzel

Gast
Ja das schon, aber hier sollen sie ja mit sinnvollen Werten gefüttert werden.
Da die Werte nicht benutzt werden, ist es irrelevant.

Daher wäre meine minimale Lösung sogar ein einfaches:
Java:
public class Mann {
    public static void main(String[] args) { }
}

Die Funktionalität wäre da ja identisch ...
 
B

BestGoalkeeper

Gast
Nu ja, berechneBMI() könnte man ja als Art Mockup Methode ansehen, von daher würde ich dem Patienten nicht gleich alle Innereien entnehmen. :eek:
 

temi

Top Contributor
Dann sind das die drei notwendigen Änderungen, damit die main() ausgeführt werden kann, wenn wir hier schon dabei sind, dem TE das Denken abzunehmen ;)
[CODE lang="java" highlight="3,4,12"]public class Mann {

static int größe;
static int gewicht;

public static void main(String[] args) {

int bmi = berechneBMI(größe, gewicht);

}

static int berechneBMI(int größe, int gewicht) {
return (1);
}
}[/CODE]
 

byRacky

Mitglied
Vielen Dank für die Vielen Antworten, genau das mit dem static vor Variable und und Methode habe ich gesucht, mir ist bewusst das das logisch alles kein Sinn ergibt, aber das war ja auch nicht meine Frage, aber trotzdem danke, manchmal möchte man halt einfach mal sein Wissen weitergeben, ohne das danach gewünscht wird :)
 

mrBrown

Super-Moderator
Mitarbeiter
Vielen Dank für die Vielen Antworten, genau das mit dem static vor Variable und und Methode habe ich gesucht, mir ist bewusst das das logisch alles kein Sinn ergibt, aber das war ja auch nicht meine Frage, aber trotzdem danke, manchmal möchte man halt einfach mal sein Wissen weitergeben, ohne das danach gewünscht wird :)
Allerdings ist deine Frage damit nicht wirklich beantwortet, Code wird damit nämlich nicht wirklich „vor der Main“ ausgeführt
 

temi

Top Contributor
Vielen Dank für die Vielen Antworten, genau das mit dem static vor Variable und und Methode habe ich gesucht, mir ist bewusst das das logisch alles kein Sinn ergibt, aber das war ja auch nicht meine Frage, aber trotzdem danke, manchmal möchte man halt einfach mal sein Wissen weitergeben, ohne das danach gewünscht wird :)
Weißt du denn auch warum durch diese Änderungen die main() ausführbar ist?
 

temi

Top Contributor
Static heißt, dass es Klassenvariablen bzw. Klassenmethoden sind, die ohne eine Instanz der Klasse existieren.
Im Gegensatz dazu die ursprüngliche Version des Codes. Da hat es sich um Instanzvariablen, bzw. -methoden gehandelt und für diese muss zwingend eine Instanz der Klasse (Mann) existieren, um sie verwenden zu können.

Das solltest du verstehen, denn das ist vermutlich das Lernziel der Übung. Falls nicht, dann frag hier lieber noch mal nach.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
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
S Möglichkeit, mit g.draw etwas vor ein JTextfield zu „zeichnen“? Java Basics - Anfänger-Themen 7
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
schemil053 Multithread - Input verrutscht während etwas ausgegeben wird Java Basics - Anfänger-Themen 6
K Warum gibt mir z. B. 40^128 eine Zahl? Ich dachte mit xor kann man nur booleanwerte erhalten, also prüfen ob etwas whar oder falsch ist? Java Basics - Anfänger-Themen 1
Y Wie kann man überprüfen, ob bei einem Print Befehl tatsächlich etwas geprintet wurde? Java Basics - Anfänger-Themen 4
M In gleicher zeile hinter ausgabe noch etwas ausgeben Java Basics - Anfänger-Themen 1
A Haben KNNs ein Gedächtnis, lernen etwas oder verändern sich, während sie nicht trainieren, aber aktiv sind? Java Basics - Anfänger-Themen 3
CptK Methoden While-Schleife so lange ausführen, wie Methode etwas zurückgibt Java Basics - Anfänger-Themen 2
D Etwas unsicher wie es weitergehen soll Java Basics - Anfänger-Themen 2
I In der Mitte eines Frames mit BorderLayout etwas malen Java Basics - Anfänger-Themen 7
K Durch eine Text eingabe etwas Ausführen Java Basics - Anfänger-Themen 5
A Ich habe das Gefühl etwas grundlegendes falsch zu machen Java Basics - Anfänger-Themen 6
D Probleme beim Kompelieren mache ich etwas falsch ? Java Basics - Anfänger-Themen 3
F (Eclipse) Beim importieren etwas fehlerhaft bitte um Hilfe :) Java Basics - Anfänger-Themen 3
T Erste Schritte Textfeld abfragen ob etwas enthalten ist. Java Basics - Anfänger-Themen 17
O Etwas auf der Konsole ausgeben, usw. Java Basics - Anfänger-Themen 22
J Input/Output Scanner Input als etwas einsetzen Java Basics - Anfänger-Themen 3
DaCrazyJavaExpert Input/Output Prüfen wie oft etwas eingegeben wurde Java Basics - Anfänger-Themen 2
JavaNewbie2.0 Gibt meiner Meinung etwas falsches aus. Java Basics - Anfänger-Themen 7
JavaNewbie2.0 Habe ein frage wie man etwas macht. Java Basics - Anfänger-Themen 13
O Klassen etwas Bruchrechnern Java Basics - Anfänger-Themen 5
R warum kann System.out.println(..) etwas, was Swing-Elemente Nicht können ? Java Basics - Anfänger-Themen 11
M Variablen Eine etwas andere if Abfrage ! Java Basics - Anfänger-Themen 10
D Etwas speichern Java Basics - Anfänger-Themen 5
L Gibt es etwas wie "HashMap <String, String, String> Java Basics - Anfänger-Themen 9
J Etwas dauerhaft überprüfen, wie ? Java Basics - Anfänger-Themen 8
A scan.nextLine() - Wenn man zu lange nichts macht, soll etwas passieren Java Basics - Anfänger-Themen 3
B Wie kann man auf das JFrame einer anderen Klasse zugreifen, etwas hinzufügen und entfernen?? Java Basics - Anfänger-Themen 3
S Komponente sagen, sie soll etwas tun Java Basics - Anfänger-Themen 3
J Für 3 Sekunden etwas bestimmtes zeichnen Java Basics - Anfänger-Themen 8
H Etwas wie sort() / sorted() in JAVA-Collections? Java Basics - Anfänger-Themen 5
S 0 wird negativ, wenn sie mit etwas negativen multipliziert wird. Warum? Java Basics - Anfänger-Themen 4
G gegen (etwas) programmieren Java Basics - Anfänger-Themen 11
Binary.Coder Vor und nach jeder Codezeile etwas einfügen Java Basics - Anfänger-Themen 3
A Wie kann man etwas von Typ Image wieder löschen? Java Basics - Anfänger-Themen 7
G vor String etwas anhängen Java Basics - Anfänger-Themen 2
D Attributen und Methoden, etwas vergessen? Java Basics - Anfänger-Themen 6
T TCP, Empfang nur wenn wirklich etwas kommt Java Basics - Anfänger-Themen 6
F Etwas bestimmtes löschen Java Basics - Anfänger-Themen 13
N prüfe ob etwas in einer Matrix steht... Java Basics - Anfänger-Themen 14
S etwas schierige Ausgabe mit Systemout Java Basics - Anfänger-Themen 5
G Methode, die etwas hochzählt Java Basics - Anfänger-Themen 6
U etwas aufaddieren... acc. Java Basics - Anfänger-Themen 12
T Etwas an paint()-Methode übergeben? Java Basics - Anfänger-Themen 6
T RandomAccessFile - Wie schreibe ich etwas in eine txt Datei? Java Basics - Anfänger-Themen 5
G etwas is falsch? Java Basics - Anfänger-Themen 10
S Compile zu etwas Ausführbarem Java Basics - Anfänger-Themen 4
X Wie save ich etwas? Java Basics - Anfänger-Themen 6
R etwas andere for schleife Java Basics - Anfänger-Themen 2
G die etwas andere suche! Java Basics - Anfänger-Themen 22
M Über einen Button etwas zeichnen lassen Java Basics - Anfänger-Themen 5
L URL aufrufen und per get etwas übergeben Java Basics - Anfänger-Themen 6
K Einer Methode etwas zuweisen Java Basics - Anfänger-Themen 22
N aus einer file etwas auslesen. Java Basics - Anfänger-Themen 2
T Aus Klasse "B" in Klasse "A" etwas tun? Java Basics - Anfänger-Themen 8
G Programme etwas machen lassen. Java Basics - Anfänger-Themen 4
B Etwas in der konsole ausgeben ? Java Basics - Anfänger-Themen 7
G Programm soll nach bestimmter Zeit etwas tun Java Basics - Anfänger-Themen 24
B KeyListener (etwas bewegen) Java Basics - Anfänger-Themen 10
P Textdateischreiben, etwas fehlt noch bzw. 1 error kommt Java Basics - Anfänger-Themen 4
H in Textdateien etwas schreiben bzw. speichern Java Basics - Anfänger-Themen 2
D In String etwas einfügen. Java Basics - Anfänger-Themen 2
B Irgend etwas ist merkwürdig! brauche hilfe Java Basics - Anfänger-Themen 16
D Mein kleines Programm etwas schöner machen :-) Java Basics - Anfänger-Themen 13
G Gibt es so etwas wie eine Textfeldgruppe? Java Basics - Anfänger-Themen 2
R Dem Textfeld einer Internetseite etwas übergeben Java Basics - Anfänger-Themen 6
P Main Methode scheint Constructor aufzurufen, ohne dass es so gecoded ist Java Basics - Anfänger-Themen 2
N Throw an Main Methode übergeben Java Basics - Anfänger-Themen 7
J Die statische Main-Methode ändert Instanzvariable? Java Basics - Anfänger-Themen 10
I Jetty starten von Programm (Main) Java Basics - Anfänger-Themen 27
Denix The public type Main must be defined in its own fileJava(16777541) Java Basics - Anfänger-Themen 13
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
G jButton führt Main Methode nicht richtig aus Java Basics - Anfänger-Themen 3
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
C60 Methoden Main-Methode erkennt meine Arrays nicht. Java Basics - Anfänger-Themen 7
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
W Verschiedene Methoden in einer Klasse in der Main aufrufen? Java Basics - Anfänger-Themen 8
S Array über ein Ausgabemethode in main ausgeben Java Basics - Anfänger-Themen 31
C Kein Zugriff auf Klassenmethoden in Main Methode Java Basics - Anfänger-Themen 23
N Wozu nutzt man in der Main Methode das args Array? Java Basics - Anfänger-Themen 10
NaZuRe Geld(Wert) von der public static void main in die public static void Blackjack Java Basics - Anfänger-Themen 2
H Warum kann man keine Parameter in die main-Methode packen? Java Basics - Anfänger-Themen 4
J In main() Datei geöffnet, von anderer Funktion beschreiben Java Basics - Anfänger-Themen 3
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
KogoroMori21 Methode in der main ausgeben Java Basics - Anfänger-Themen 2
s_1895 zu viele Zeilen in der Main Methode Java Basics - Anfänger-Themen 4
C Methodenrückgabe wird in der main nicht berücksichtigt Java Basics - Anfänger-Themen 2
K Übergabe des Wertes einer Variable aus main() in eine Klassenmethode Java Basics - Anfänger-Themen 8
K Übergabe von Werten (zweidimensionales Array) aus einer Methode an zweidimensionales Array in main() Java Basics - Anfänger-Themen 3
T Main startet nicht bei vorgegebenen Code Java Basics - Anfänger-Themen 41
G main Methode Java Basics - Anfänger-Themen 5
G Problem bei der Ausgabe einer Main Claase Java Basics - Anfänger-Themen 7
1 main-Methode erweitern, Nachfrage nach wiedeholung Java Basics - Anfänger-Themen 2
J main methode Java Basics - Anfänger-Themen 1
B No Main Classes Found Java Basics - Anfänger-Themen 7
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben