IntelliJ IDEA Community Edition

FinnJ

Mitglied
Hallo,
ich wage gerade meine ersten Schritte in IntelliJ und komme insgesamt recht gut zurecht, allerdings verstehe ich einfach nicht (und finde dazu auch kein Video), wie ich Methoden, welche nicht die static main methode sind, ausführen kann?

Java:
package Main.Liste;

public class Liste {
    
    Listenelement anfang;
    
    
    public static void main (String[] args) {
        System.out.println("Starting");
    }
    
    Liste () {
        anfang = new Abschluss();
        
    }
    
    public void HintenEinfuegen (Datenelement d) {
        anfang.HintenEinfuegen(d);
    }
    
    public void VorneEinfuegen (Datenelement dNeu) {
        Knoten kNeu = new Knoten(dNeu, anfang);
        kNeu.nachfolger = anfang;
    }
    
}

An sich funktioniert das Programm nämlich, aber ich weiß nicht wie ich z.B. die Methode "HintenEinfuegen" aufrufen kann?
 
Y

yfons123

Gast
im regelfall exakt so wie du es bei dem abschluss gemacht hast und wahrscheinlich genauso wie du es die anderen 10000 mal gemacht hast
Java:
    public static void main (String[] args) {
        System.out.println("Starting");
        Liste liste = new Liste();
    }
 

FinnJ

Mitglied
im regelfall exakt so wie du es bei dem abschluss gemacht hast und wahrscheinlich genauso wie du es die anderen 10000 mal gemacht hast
Java:
    public static void main (String[] args) {
        System.out.println("Starting");
        Liste liste = new Liste();
    }
Tut mir leid ich stehe gerade glaube ich etwas auf dem Schlauch. Wenn ich ein Objekt erzeuge, indem ich es in die static main Methode schreibe, dann wird das ja beim starten vom Programm erzeugt, allerdings bin ich dann ja in diesem Screen. Wie rufe ich von hier aus eine Methode auf?1649847313016.png
 

httpdigest

Top Contributor
Jedes Java-Programm startet _immer_ von der public static void main Methode einer Klasse.
Es ist ja dann völlig dir überlassen, was diese main Methode tun soll.
Du kannst innerhalb dieser main Methode ja andere Methoden aufrufen.
Oder anders gesagt: _Alles_, was dein Programm tun soll, muss _irgendwie_ von dieser main-Methode ausgehen.

Aus der Art, wie du deine Frage formulierst, klingt es so, als wolltest du eher eine interaktive REPL (Read-Eval-Print-Loop) haben. Sowas gibt es z.B. mit der JShell.
 

Jw456

Top Contributor
Java:
 public static void main (String[] args) {
        System.out.println("Starting");
        Liste liste = new Liste();
        liste.HintenEinfuegen (dein Datenelement );
    }

PS . Methoden schreibt man klein
 

Jw456

Top Contributor
public void HintenEinfuegen (Datenelement d) {
anfang.HintenEinfuegen(d);
}
frage gibt es auch in der Klasse "Datenelement" eine Methode "Hinteneinfügen" die gibt es doch in der Klasse "List"


Jetzt siehst du auch warum man Methoden klein und Klassen groß schreibt.

Listenelement anfang;
.....
anfang = new Abschluss();
glaube nicht das das OK ist
Die DatenTypen passen eigentlich nicht.


Ist die "main" Methode in der Klasse "List" wirklich deine echte main Methode?
 
Zuletzt bearbeitet:

FinnJ

Mitglied
Jedes Java-Programm startet _immer_ von der public static void main Methode einer Klasse.
Es ist ja dann völlig dir überlassen, was diese main Methode tun soll.
Du kannst innerhalb dieser main Methode ja andere Methoden aufrufen.
Oder anders gesagt: _Alles_, was dein Programm tun soll, muss _irgendwie_ von dieser main-Methode ausgehen.

Aus der Art, wie du deine Frage formulierst, klingt es so, als wolltest du eher eine interaktive REPL (Read-Eval-Print-Loop) haben. Sowas gibt es z.B. mit der JShell.
Ahh okay, also kann ich nicht nachdem ich die Main methode gestartet habe einzelne Methoden aufrufen, sondern muss diese Methoden schon in die Main Methode schreiben um sie aufzurufen
 

FinnJ

Mitglied
frage gibt es auch in der Klasse "Datenelement" eine Methode "Hinteneinfügen" die gibt es doch in der Klasse "List"


Jetzt siehst du auch warum man Methoden klein und Klassen groß schreibt.


glaube nicht das das OK ist


Ist die "main" Methode in der Klasse "List" wirklich deine echte main Methode?
Nein, Datenelement ist nur ein interface, welches von der Klasse Knoten verwaltet wird und die Klasse Knoten extended die abstrakte Klasse Listenelement. Dass ich Klassen in Caps schreibe hatte ich mir eigentlich mal angewöhnt, aber heute hab ich irgendwie aus Faulheit alles klein geschrieben.. war wahrscheinlich ein Fehler :/
 

Anhänge

  • 1649850879979.png
    1649850879979.png
    84,8 KB · Aufrufe: 3
Y

yfons123

Gast
so wie du die Methoden geschrieben hast ist es pascal case und das macht man in c# bei Methoden aber nicht in java.. da ist es camel case
 

FinnJ

Mitglied
blue j ist für Anfänger geeignet

aber du willst ja professionell sein
An sich will ich das schon auf einem professionellerem Level machen, allerdings merke ich auch, dass das nicht gerade leicht ist. BlueJ war halt extrem leicht, man konnte die klassen einzeln erzeugen und dann mit rechtsklick die methoden einzeln aufrufen, aber ich finde die Fehler die man eventuell macht werden bei intelliJ besser dargestellt, da fällt es einem viel leichter die zu lösen
 
Y

yfons123

Gast
bluej ist halt dafür gemacht daß ein Anfänger schnell was zu sehen bekommt... intellij ist gemacht für Programmierer


das was du programmiert hast sieht nicht falsch aus, dir fehlt Grundwissen das du noch nicht gelernt hast aber jetzt kannst du es ja nach holen
 

FinnJ

Mitglied
bluej ist halt dafür gemacht daß ein Anfänger schnell was zu sehen bekommt... intellij ist gemacht für Programmierer


das was du programmiert hast sieht nicht falsch aus, dir fehlt Grundwissen das du noch nicht gelernt hast aber jetzt kannst du es ja nach holen
Werde ich machen, muss mich jz leider noch die nächsten Wochen aufs Abi konzentrieren aber danach werde ich mich mal richtig einlesen und das gescheit üben.
Danke für die Hilfe!
 

FinnJ

Mitglied
bluej ist halt dafür gemacht daß ein Anfänger schnell was zu sehen bekommt... intellij ist gemacht für Programmierer


das was du programmiert hast sieht nicht falsch aus, dir fehlt Grundwissen das du noch nicht gelernt hast aber jetzt kannst du es ja nach holen
Da hätte ich jetzt doch noch eine Frage, welche IDE sollte ich benutzen, wenn ich wie in diesem Fall eine Liste erzeugen will und die Methoden dieser testen will? BlueJ funktioniert zwar, allerdings finde ich die Farbgebung nicht so toll, da gefällt mir die von z.B. IntelliJ bei weitem besser.
 

temi

Top Contributor
Da hätte ich jetzt doch noch eine Frage, welche IDE sollte ich benutzen, wenn ich wie in diesem Fall eine Liste erzeugen will und die Methoden dieser testen will? BlueJ funktioniert zwar, allerdings finde ich die Farbgebung nicht so toll, da gefällt mir die von z.B. IntelliJ bei weitem besser.
Die IDE ist doch nur ein Hilfsmittel zur Programmierung. Es ist egal, welche du verwendest. Du kannst auch einen einfachen Texteditor hernehmen.
Java:
package Main.Liste;

public class Liste {
   
    Listenelement anfang;
   
   
    public static void main (String[] args) {
        System.out.println("Starting");
        Liste meineListe = new Liste(); // hier wird eine Liste erzeugt.
       
        meineListe.HintenEinfuegen(...); // und da wird sie verwendet
       
        // .. hier kommt der Rest des Programms, das die Liste verwendet
    }
   
    Liste () {
        anfang = new Abschluss();
       
    }
   
    public void HintenEinfuegen (Datenelement d) {
        anfang.HintenEinfuegen(d);
    }
   
    public void VorneEinfuegen (Datenelement dNeu) {
        Knoten kNeu = new Knoten(dNeu, anfang);
        kNeu.nachfolger = anfang;
    }
   
}


Ein guter Ansatz wäre es eine separate Hauptklasse (mit der main() Methode) zu erstellen und dort die Klasse Liste zu verwenden (wie oben gezeigt). In der Klasse Liste kann dann die main() Methode entfallen. Später werden deine Programme ja noch viel mehr Klassen haben, da ist es sinnvoll, gleich sauber zu trennen.
 

FinnJ

Mitglied
Die IDE ist doch nur ein Hilfsmittel zur Programmierung. Es ist egal, welche du verwendest. Du kannst auch einen einfachen Texteditor hernehmen.
Ich weiß, aber ich frage deshalb, da mir BlueJ von der Farbgebung nicht allzu gut gefällt, ich aber den Umgang damit sehr gerne mag. Beispielsweise, dass man Methoden direkt nach dem Erstellen eines Objekts aufrufen kann und diese somit einzeln testen kann. Würde dir da eine Alternative einfallen die recht ähnlich zu handhaben ist?
 

temi

Top Contributor
Ich weiß, aber ich frage deshalb, da mir BlueJ von der Farbgebung nicht allzu gut gefällt, ich aber den Umgang damit sehr gerne mag. Beispielsweise, dass man Methoden direkt nach dem Erstellen eines Objekts aufrufen kann und diese somit einzeln testen kann. Würde dir da eine Alternative einfallen die recht ähnlich zu handhaben ist?
Vergiss das, was BlueJ da macht. Das ist nur eine Krücke für den Anfang und wird dir später nie wieder so begegnen.

Einzeln testen kannst du sie auch, du musst sie halt einzeln z. B. in der main() Methode aufrufen.
 

FinnJ

Mitglied
Vergiss das, was BlueJ da macht. Das ist nur eine Krücke für den Anfang und wird dir später nie wieder so begegnen.

Einzeln testen kannst du sie auch, du musst sie halt einzeln z. B. in der main() Methode aufrufen.
Okay, dann werde ich mich mal etwas damit beschäftigen. Danke für die Hilfe! Schönen Abend noch
 

temi

Top Contributor
Hier mal ein Beispiel, wie ich das meine. In IntelliJ erstellst du dazu zwei Klassen.
Java:
// Hauptklasse
public class HelloWorld {
 
    public static void main(String[] args) {
        Greeter greeter = new Greeter();
        greeter.greet(); // aufrufen (testen) der Methode greet()
    }
}
Java:
// Weitere Klasse
public class Greeter {
 
    public void greet() {
        System.out.println("Hallo Welt!");
    }
}

Gestartet wird immer über die main() Methode der Hauptklasse, egal wie viele weitere Klassen es noch gibt. In der Hauptklasse und mittels der main() Methode, wird alles "zusammen gebaut".
 

FinnJ

Mitglied
Hier mal ein Beispiel, wie ich das meine. In IntelliJ erstellst du dazu zwei Klassen.
Java:
// Hauptklasse
public class HelloWorld {
 
    public static void main(String[] args) {
        Greeter greeter = new Greeter();
        greeter.greet(); // aufrufen (testen) der Methode greet()
    }
}
Java:
// Weitere Klasse
public class Greeter {
 
    public void greet() {
        System.out.println("Hallo Welt!");
    }
}

Gestartet wird immer über die main() Methode der Hauptklasse, egal wie viele weitere Klassen es noch gibt. In der Hauptklasse und mittels der main() Methode, wird alles "zusammen gebaut".
Okay, also das was BlueJ quasi für mich alles gemacht hat muss ich jetzt selber machen indem ich erstmal (beim Beispiel der Liste) ein Datenelement erstelle und damit dann die Methode aufrufe und zum testen dann am besten noch mir irgendwie den Knoten der jetzt am Anfang der Liste ist returne.
Ist ja recht logisch soweit, mal schauen wo ich demnächst dran hängen bleib😆
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J IntelliJ IDEA IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
krgewb IntelliJ Idea - Alles eingeklappt IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
S IDEA IntelliJ Scenebuilder in Intellij Idea am MAC OS X IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
O IntelliJ IDEA Lizenz IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 15
M Intellij IDEA lädt Font nicht und Darcula funktioniert nicht IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
M Intellij IDEA Programm ohne Main-Methode starten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
U IDEA IntelliJ IntelliJ IDEA automatische Formatierung deaktivieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
M Idea IntelliJ - Starten der Mainmethode ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 10
K IDEA IntelliJ Umstieg von ADT (Eclipse) auf Android-Studio (IntelliJ IDEA) IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
R intellij idea mit SVN tortoise 1.8 verwenden IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
L Intellij IDEA 8 - Wie ist eure Meinung? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 38
J IDEA IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 10
G IDEA IntelliJ Problem IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
MiMa IntelliJ GIT Local Zweig?? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
D Intellij source controll zeigt nicht alle klassen an ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
MiMa Die Sourcecode Verzeichnisse verschwinden in IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
M Eclipse oder IntelliJ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
krgewb IntelliJ durchsucht .log-Dateien IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
Oneixee5 IntelliJ JavaEE IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
krgewb GUI-Elemente in IntelliJ verschwunden IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
MiMa IntelliJ Projekt umbenennen?? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
MiMa IntelliJ dubious ownership in reposity? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
JAnruVA IDEA IntelliJ JavaScript in IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
D Crawler funktioniert in intellij aber in Eclipse nicht IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
W Speicherbelegung in IntelliJ auswerten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
N generate selected getters with intellij IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
MiMa Netbeans zu IntelliJ mit Maven konvertieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 14
temi IDEA IntelliJ Intellij new UI IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
D strg + alt + B funktioniert nicht [IntelliJ] IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
MiMa IntelliJ Maven Projekt erstellen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 15
MiMa IntelliJ GIT-Verzeigung zu Master hinzufügen? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 9
MiMa Nebtbeans Projekte nach IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
L source folder und code highlighting IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 21
D lesen von json Dateien in Intellij IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 13
MiMa Doppelten Code in IntelliJ finden IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
H Branches vergleichen - GIT, IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
frager2345 Datenbankzugriff Intellij IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 10
Y IDEA IntelliJ Warum findet IntelliJ die maven property nicht IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
LimDul IDEA IntelliJ Tipps für den Umstieg von Eclipse auf intelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
S IDEA IntelliJ GUI Component Tree anzeigen in IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
D Intellij Memory Settings IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
krgewb In IntelliJ alles eingeklappt IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
N IDEA IntelliJ Intellij lässt keine neuen archetypes erstellen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
OnDemand IntelliJ Branching Master/DEV Berechtigungen möglich? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
9 IDEA IntelliJ Wie kann man ein JUnit Test bei IntelliJ durchführen? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 11
9 IDEA IntelliJ IntelliJ lässt nicht ein Code ausführen, wenn irgendwo in andere Klasse Fehler ist. IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 12
krgewb IntelliJ - Zu application.properties springen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
D Intellij mehrere Programme in einem Projekt bearbeiten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 14
M Intellij build jar funktioniert nicht ! IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
Z Intellij zeight H2-Datenbank nicht an IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 9
P Maven für Intellij IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
P Intellij "httpRequest" ins Projekt mit einbinden? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 49
temi IntelliJ, Gradle und Git: gitignore IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 7
N Frage zu meinen IntelliJ-Einstellungen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
mrBrown IntelliJ 2020.1 - Maven Projekte nicht ausführbar IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
W IntelliJ soll nicht immer alle Code-Files checken IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
Thallius Falsches Warning in IntelliJ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 14
D JavaFX 12 / SDK 12 -> IntelliJ error IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 7
R IDEA IntelliJ Intellij klaut mir zu viel zu viel Speicherplatz weg! IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 22
Y Intellij mit Android SDK IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
B IntelliJ - .properties in jar einbinden IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 7
E Maven-Installation für Intellij IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
K IntelliJ unter Linux: Probleme beim Ausführen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
A IDEA IntelliJ IntelliJ Maven oder Webprojekt, kann keine normalen Java Klassen erstellen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
X "Extract Method Object" aus IntelliJ auch in Eclipse? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
U [IntelliJ] Variablen Refactoring IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
H Intellij 8.1.3 JDSK Probleme IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
S Metriktools für IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
M Grails Plugin in IntelliJ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
A IntelliJ zeigt meine class-Files nicht an!? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
MamaMia44 Ich habe problem mit Intelej Idea IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
L JetBrains Idea - GWT Super Dev Mode kann nicht aktiviert werden IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
S Fehlernde IDEA-Features in Eclipse IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 9
Wildcard IDEA IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2

Ähnliche Java Themen

Neue Themen


Oben