Methoden Methoden in Java

Q-bert

Mitglied
Hallo,
Ich bin neu hier und das ist meine erste Frage. Es geht um BlueJ und die Methoden. In BlueJ ist es ja so, dass man eine Methode schreiben kann und es später per Mausklick ausführen kann. Meine Frage lautet jetzt: "Wie soll man das bei einem Normalen Java Programm, der z.B mit Eclipse, geschrieben wurde eine Methode aufrufen?" Bei Eclipse und anderen Programmierumgebungen gibt es ja nicht die Funktion wie in BlueJ.
 

Robat

Top Contributor
Kenne BlueJ selber nicht, daher weiß ich nicht wie bekannt dir das hier jetzt vor kommen wird.

Wie du vielleicht weißt, hat jedes Programm ein Ausgangspunkt. Dort setzt das Programm ein. In Java ist das die public static void main(String[] args){} Methode.
Dort kannst du alles reinschreiben, was dein Programm ausführen soll. So kannst du eben dort auch Methoden aufrufen à la:

Java:
public static void main(String[] args)
{
     printHelloWorld();
} 

private static void printHelloWorld()
{
     System.out.println("Hello World");
}

Gruß Robert
 

Q-bert

Mitglied
Gucken sie mal bitte in den Code. Die Methoden die dort geschrieben wurden, kann man wie man es auf dem Bild sieht per Mausklick ausführen, was nach meiner Information normalerweise bei einer anderen Entwicklungsumgebung nicht funktioniert.
Code:
import java.util.ArrayList;
public class Bücherei
{
    private ArrayList <Buch> buchsammlung;
    private ArrayList <Buch> gelbelabel;
    private String labelfarbe;
    public Bücherei()
    {
        buchsammlung = new ArrayList <Buch> ();
        gelbelabel = new ArrayList <Buch> ();
    }
    public boolean einBuchEinfügen (Buch einBuch)
    {
        buchsammlung.add(einBuch);
        return true;
    }
    public void buchZuOrdnen (int altersempfehlung)
    {
        switch (altersempfehlung)
        {
            case 16: labelfarbe = "grün";break;
            case 10: labelfarbe = "blau";break;
            case 5: labelfarbe = "rot";break;
            default: labelfarbe = "gelb";
        }
        System.out.print("Das buch hat die Farbe: " + labelfarbe);
    }
    public void nachGelbenBüchernSuchen ()
    {
        for (Buch einBuch: buchsammlung)
        {
            if (einBuch.getAltersempfehlung() == 16 || einBuch.getAltersempfehlung() == 10 || einBuch.getAltersempfehlung() == 5)
            {
                gelbelabel.add(einBuch);
            }
        }
    }
    public double summeAusrechnen ()
    {
        double summe = 0.0;
        for (Buch einBuch: buchsammlung)
        {
            summe += einBuch.getEinkaufspreis();
        }
        return summe;
    }
    public void wertverlust ()
    {
       double wert;
        for (Buch einBuch: buchsammlung)
        {
        if ((einBuch.getAktuellesjahr() -  einBuch.getAufnahmejahr()) >= 2)
        {
           wert = einBuch.getEinkaufspreis();
           wert = 0.50;
        }
       }
    }
    public boolean buchEntfernen (Buch einBuch)
    {
        buchsammlung.remove(einBuch);
        return true;
    }
}
 

Anhänge

  • WhatsApp Image 2017-05-12 at 23.21.09.jpeg
    WhatsApp Image 2017-05-12 at 23.21.09.jpeg
    181,9 KB · Aufrufe: 33

mrBrown

Super-Moderator
Mitarbeiter
Richtig - deshalb gibt es dort in den meisten Fällen die von @Robat genannte main, welche den Programmstart darstellt, und in derer dann weitere Methoden aufgerufen werden können.
 

Robat

Top Contributor
@Thallius du nimmst mir die Worte aus dem Mund!

@Q-bert wenn du mit deiner Bücherei Klasse in einem richtigen Java Projekt arbeiten willst müsstest du folgende Dinge tun:
- in deiner IDE ein Projekt erstellen
- deine Bücherei Klasse hinein kopieren
- eine Klasse mit der Main Methode erstellen
- in dieser Main Methode eine Instanz deiner Bücherei anlegen
- über diese Instant kannst du dann die besagten Methoden aufrufen à la: inszanzname.meineMethode();

Vorher solltest dir aber ein gutes Buch / Tutorial zur Hand nehmen und grundlegende Begriffe klären. Ansonsten wird das, mMn, zu nichts führen .

Gruß Robert
 

Q-bert

Mitglied
Ich bedanke mich für die zahlreichen Antworten. @Thallius Ich stimme dir voll zu. Diese Vereinfachung führt mich dazu, dass ich voll durcheinander komme, wenn ich ein Code in Eclipse oder so schreibe. Nochmal danke an alle.
 

Leon_2001

Aktives Mitglied
BlueJ ist vorallem für die Schule gedacht/hilfreich... BlueJ führt zu schnelleren Erfolgen und eine main Methode würde vermutlich viele überfordern.

Mit BlueJ kann man auf Objekte erzeugen z.B scanner verzichten und das Methoden schreiben üben. Der Umstieg auf Eclipse usw. ist ja nicht so schwierig... Methoden aufrufen geht einfach durch Methode in die Main schreiben und den Rest wie eingaben des Benutzers muss man sich eben noch aneignen, Objekte erstellen ... den meisten ist aber BlueJ bereits zu komplex.

Daher meiner Meinung nach ziemlich sinnvoll... aber ich habe auch nicht so viel Erfahrung-
 

Thallius

Top Contributor
BlueJ führt zu schnelleren Erfolgen ...

Irgendwie erscheint mir als wäre das heute das allerwichtigste.

Wenn ich jetzt anfangen würde zu philosophieren, dann würde ich sagen das ist vielleicht ein Grund warum die heute Jugend so erfolglos und wenig belastbar ist. Schnelle Erfolge weiß man nicht zu schätzen. Es gibt keinen Ansporn. Nur was man sich hart erarbeitet hat darauf ist man stolz und das prägt einen für das weitere Leben. Irgendwie meinen heute alle es gäbe unseren Wohlstand geschenkt nur weil Mama und Papa den schon hatten und wir dafür nichts tun müssen.

Aber ich schweife an :)

Claus
 

Leon_2001

Aktives Mitglied
Ich denke, dass Ziel des Unterrichts ist es eben auf alle Schüler einzugehen. Es gibt sehr viele, die mit Java totale Probleme haben, aber auch welche, die es schon können oder zuhause ein bisschen mehr machen, weil ihnen der Unterricht zu langsam voran geht (ich^^). Aus diesem Grund muss man etwas wählen, womit man alle Schüler anspricht und leichteste Sache für nahezu alle zu machen. Das Schwierigkeitslevel kann so ein bisschen selber bestimmt werden, indem man komplexere Methoden einbaut.

Wir haben seit Ende Januar zwei Stunden die Woche in Informatik Java (gibt allerdings Ausfälle). Haben bisher die Datentypen,die Print Methode, void Funktionen (ohne Paramter), if, for, while und Arrays gemacht....
Das ist ziemlich wenig für so einen großen Zeitraum und für die meisten zu schwierig ... Eine richtige Programmierumgebung würde da einfach übers Ziel hinausschießen.
 

Thallius

Top Contributor
Meiner Meinung nach sollte Programmieren sowieso von der Informatik getrennt werden. Informatik als Pflichtfach ist toll aber dort sollte Anwenderorientiert unterrichtet werden. Sprich das was 90% der Leute später im Job brauchen werden.

Sprich als erstes sollte mal ein wenig Einblick in die Harware gelehrt werden. Dann wie das Ganze überhaupt funktioniert. Was sind Bits und Bytes? Was eine CPU, RAM, GPU etc. Nur damit man das überhaupt mal grob versteht was da im Computer eigentlich abgeht.

Dann würde ich zum Beispiel Excel und Word nehmen und dan Leuten beibringen damit umzugehen. Und zwar nicht nur einen Text schreiben oder eine einfache Tabelle erstellen sondern eben auch richtige Formatierungen, Formeln und Macros benutzen, Pivots erstellen etc. Gerade mit Excel kann sich jahrelang beschäftigen und steigt dabei automatisch immer tiefer auch ins Programmieren ein, denn die Macros sind ja auch nichts anderes als VBA.

Programmieren selber würde ich weiterhin nur als Wahlfach lasse. Wer sich nicht dafür interessiert der wird es auch nie kapieren und alle anderen nur belasten denen das Spaß macht und die wirklich was lernen wollen.

Als ich in der Oberstufe war, waren wir Deutschland weit eines der ersten Gymnasien die eine Informatik AG angeboten haben. Wir hatten damals 2 Commodore 2032 mit 8" Disketten laufwerk. Der hatte ganze 32KB RAM und ein 80x60 Monchrom-Display. Später gabs noch 4 PET 2001 mit je 8KB RAM dazu. Der Lehrer wußte genauso wenig wie wir und so hat sich reihum immer einer ein Projekt gesucht und das selbst erlernt (Alles noch ohne Internet, dass gabs damals nicht, man musste sich durch die hunderte Seiten der englischen "Programming Reference Guide" durchkämpfen). Das war eine tolle Zeit weil es eben auch was von Pioneergeist hatte aber es war eben auch anstrengend. Ich habe eigentlich nach der Schule nichts anderes gemacht als in dem Guide zu lesen und fiktive Programme auf Papier zu schreiben und darauf gefiebert bis wir die nächste AG hatten.

Gruß

Claus
 

Leon_2001

Aktives Mitglied
Das klingt ziemlich spannend, um ehrlich zu sein.
Informatik ist bei uns auch Eine Ag(bzw. ein halbes Pflichtwach .... Wenn man Info nicht nimmt, muss man eben andere Fächer nehmen) ,die aber trotzdem nach dem Lehrplan geht, da man Sich darin im Abitur prüfen lassen kann.

Ich bin ja sowieso der Ansicht, dass der meiste Unterricht in der Schule wenig taugt, was zu einem Großteil an der meiner Meinung nach wirklich schlechten Lehrplänen liegt. Ich bin mir sicher, dass ich viel mehr in Informatik gelernt hätte, wenn ich ohne Noten usw. Habe, nur mit Schülern, die da auch wirklich reinwollen (und das Interesse zeigen) und einem Lehrer der eben auch die Selbständigkeit fördert ... Wo man sich die Sachen eben auch mal selber erarbeitet und gemeinsam an einem Ziel sitzt. Wo man sich auch auf wirklich nützliche Sachen fokussiert... z.B. Hatten wir HTML ... Meiner Ansicht nach, komplett unnötig, da das "programmieren" zu lernen, wenn man kein CSS macht... Denn danach kann man so ziemlich nichts, den jeder der mal eine Seite nur mit einfachen HTML Tags gemacht hat, weiß wie hässlich das aussieht ... Wer könnte da auf die Idee kommen, dass HTML eig ziemlich nützlich ist ...
Aber gut, dass alle Schüler wissen, was HTML ausgeschrieben ist, auch wenn ihnen die Bedeutung davon unklar ist.


Aus diesem Grund, werde ich mich auch mal an einem dieser Spieleprojekte hier beteiligen, sobald ich ein paar mehr Grundkenntnisse haben. Da kann man zusammen arbeiten und ein eigene Projekt gemeinsam verwirklichen und hoffentlich am Ende auch stolz darauf sein.
 

Q-bert

Mitglied
Natürlich habt ihr alle ein bisschen Recht. Ich bin nur nicht ganz damit einverstanden, dass man in der Schule kein Programmieren lernen sollte. Ich hatte ein halbes Jahr lang Excel. Ich habe mich zu Tode gelangweilt. Ich habe Baloons TD im Internet gespielt und gehofft die Stunde geht um. Um Excel , Word oder Powerpoint zu lernen brauche ich 1-3 Wochen.

Aber es stimmt auch, dass viele Schüler nicht mit Java klar kommen. Ich glaub es hat damit zu tun, dass die Schüler von Heute nicht viel am Pc machen, außer Youtube Videos zu gucken und deren Status in Facebook zu aktualisieren. Viele wissen nicht mal, dass der Pc nur 0 und 1 versteht. Wenn die wüssten, dass man in den 80-gern mit DOS gearbeitet hat, dann hätten sie sich jetzt mehr Mühe gegeben. :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Sachinbhatt Sind alle Methoden in Java implizit virtuell Allgemeine Java-Themen 2
B Methoden Java Getter und Setter Methoden Allgemeine Java-Themen 9
Y Java Methoden unterschiedliche Zahlenreihen Allgemeine Java-Themen 2
F Sich automatisch aufrufende Java-Methoden Allgemeine Java-Themen 2
L Operatoren Java Reflections: Alle Methoden einer Klasse aufrufen ohne Exceptions Allgemeine Java-Themen 5
M Quellcode von Java-Methoden Allgemeine Java-Themen 9
D Methoden Java-Aufgabe Allgemeine Java-Themen 2
K Java ruft Methoden nicht der Reihe nach auf Allgemeine Java-Themen 14
T Java Array in Methoden Allgemeine Java-Themen 1
O Java-Obfuscator, welcher einzelne Methoden, Klassen und Ordnerstrukturen ausnehmen kann. Allgemeine Java-Themen 1
B Methoden Alle Methoden und Variablen aus Java-Dateien auslesen. Allgemeine Java-Themen 7
M Generische Methoden mit Java und globale Variablen Allgemeine Java-Themen 9
Chris81T JNI: Java Methoden von C++ Code aufrufen Allgemeine Java-Themen 8
K Magische Methoden in Java Allgemeine Java-Themen 6
D Interface, aber die Methoden bleiben teilweise gleich Allgemeine Java-Themen 35
B Leere vererbte Interface-Methoden Allgemeine Java-Themen 8
R Programm führt Methoden gleichzeitig aus Allgemeine Java-Themen 2
Encera Unterschied zweier "toString"-Methoden Allgemeine Java-Themen 1
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
B Arrays von Methoden möglich? Allgemeine Java-Themen 44
S Mit Methoden kann man definieren für was <T> steht. Geht das auch irgendwie für Variablen? Allgemeine Java-Themen 12
N abstracte klassen methoden Allgemeine Java-Themen 32
G Methoden für die Zukunft sinnvoll? Allgemeine Java-Themen 4
nonickatall Methoden Kann man Klassen/Methoden aus Variablen heraus aufrufen? Allgemeine Java-Themen 6
LimDul Hä? Lambda-Ausdruck geht, Methoden-Referenz nicht Allgemeine Java-Themen 8
S Interface Design von HookUp oder Callback Methoden für eigenes Framework Allgemeine Java-Themen 9
J Namen von Methoden über Reguläre Ausdrücke bearbeiten Allgemeine Java-Themen 6
D Methoden Methoden anpassen und fehlende Funktionen hinzufügen Allgemeine Java-Themen 475
V Threads Probleme beim Aufrufen von Methoden einer anderen Klasse (Threads) Allgemeine Java-Themen 14
R Statistische Methoden (Mathematik) Aufgabe Allgemeine Java-Themen 9
X Brüche kürzen mittels Methoden und ggT Allgemeine Java-Themen 15
L mehrere Methoden Allgemeine Java-Themen 19
KeexZDeveoper Zugriff auf Methoden vom Server Allgemeine Java-Themen 7
B StAX Parser - mehrere Methoden, ein XML Allgemeine Java-Themen 4
F Operationen/Methoden einen WebService im Browser mit Apache Axis aufrufen Allgemeine Java-Themen 4
A Automatisches Methoden Laufzeiten logging? Allgemeine Java-Themen 7
rentasad Design-Frage - Interfaces, Klassen, statische Methoden Allgemeine Java-Themen 3
N HashMap und Methoden richtig einbinden Allgemeine Java-Themen 2
R Variable durch mehrere Methoden ändern und nutzen Allgemeine Java-Themen 17
M Compiler-Fehler Methoden-Referenz Allgemeine Java-Themen 5
X Threads Externe Variablen in Run Methoden verändern Allgemeine Java-Themen 4
S 2 methoden mit gleichen namen und ein Interface Allgemeine Java-Themen 9
F Enum-werte als Methoden-Parameter übergeben Allgemeine Java-Themen 6
N Vererbung Design-Problem mit vorhandenen, von der Klasse unabhängigen Methoden Allgemeine Java-Themen 12
E OOP Objekte und Methoden Allgemeine Java-Themen 1
N Methoden Methoden einer Klasse auf Grundlage eines Strings aufrufen Allgemeine Java-Themen 6
D Code für bereitgestellte Methoden Allgemeine Java-Themen 1
P Entity Objekt Methoden vs Service methoden Allgemeine Java-Themen 2
R Signatur von Methoden in eine Datei schreiben? Allgemeine Java-Themen 4
A Methoden verändern Allgemeine Java-Themen 12
F Methoden Arraylist weiterverwenden nach methoden Aufruf Allgemeine Java-Themen 2
J Best Practice Testen von protected Methoden Allgemeine Java-Themen 7
L Methoden "Schiffe versenken" Quellcode in Methoden umwandeln Allgemeine Java-Themen 6
G Matrix reduzieren zwei Methoden Allgemeine Java-Themen 2
Sogomn Best Practice "Doppelte" Methoden Allgemeine Java-Themen 3
Paul15 String Methoden Allgemeine Java-Themen 7
G Methoden BMI -Wert Aufgabe(Methoden) Allgemeine Java-Themen 4
F Testen von Methoden Allgemeine Java-Themen 3
S "Vererben" statischer Felder/Methoden Allgemeine Java-Themen 4
F Methoden in der Enumeration Klasse Allgemeine Java-Themen 1
S Methoden ohne Methodenkopf ?! Allgemeine Java-Themen 5
T Überschreiben von Methoden Allgemeine Java-Themen 6
M Methoden werden in falscher Reihenfolge bearbeitet Allgemeine Java-Themen 10
S Methoden Methoden überschreiben Allgemeine Java-Themen 3
N Threads statische Methoden in Threads Allgemeine Java-Themen 5
A also definition von klassen und string methoden und algorithmik Allgemeine Java-Themen 13
X Eigene Annotation - mit Bedingung für ganze Klassen oder Methoden Allgemeine Java-Themen 2
A Threads Lock über mehrere Abschnitte in verschiedenen Methoden Allgemeine Java-Themen 5
S Methoden Frage Allgemeine Java-Themen 2
R Wie kann man diese Methoden in arrays etablieren? Allgemeine Java-Themen 8
M Methoden in Rescources speichern Allgemeine Java-Themen 4
G Synchronisation nicht statischer Methoden Allgemeine Java-Themen 4
A Vererbung finale Methoden überschreiben Allgemeine Java-Themen 24
A Methoden parallelisieren? Allgemeine Java-Themen 2
L Methoden methoden an generischen klassentyp anpassen Allgemeine Java-Themen 5
C Methoden Übernahme von standart nativen Methoden? Allgemeine Java-Themen 9
B Zusammenfassen verschiedener ähnlicher Methoden Allgemeine Java-Themen 8
K JNI: Methoden aus unterschiedlichen Threads aufrufen Allgemeine Java-Themen 3
P Unterschiedliche Clone- Methoden Allgemeine Java-Themen 5
MQue Spezialfrage Überschreiben von Methoden Allgemeine Java-Themen 14
MiMa Rekursive Methoden Allgemeine Java-Themen 3
S Programm das alle aufgerufenen Methoden ausgibt..? Allgemeine Java-Themen 6
F ListIterator (next & previous methoden) Allgemeine Java-Themen 5
W Frage zu Refactoring statischer Methoden Allgemeine Java-Themen 4
M Methoden/Klassen für andere Projekte Allgemeine Java-Themen 4
T Methoden per String-Namen aufrufen Allgemeine Java-Themen 2
C Kapselung Warum graift man auf Variablen nur über Methoden und nich direkt zu? Allgemeine Java-Themen 10
M Methoden Static Methoden und Thread??? Allgemeine Java-Themen 4
A Methoden ohne Referenzen finden Allgemeine Java-Themen 9
turmaline OOP zwei gleiche Methoden mit kleinen Unterschieden Allgemeine Java-Themen 15
G JUnit Test Methoden in anderen Thread verlagern Allgemeine Java-Themen 4
K Auf Methoden der Runnable Klasse zugreifen Allgemeine Java-Themen 2
S Methoden Class.forName() >> Methoden - Reihenfolge Allgemeine Java-Themen 5
D Passende Name für Methoden finden Allgemeine Java-Themen 3
D Wann sollte ich statische Methoden und Variablen benutzen? Allgemeine Java-Themen 44
A Methoden laufen im Konstruktor, außerhalb allerdings nicht Allgemeine Java-Themen 2
GianaSisters ArrayList in Methoden übergeben Allgemeine Java-Themen 3
S static methoden Allgemeine Java-Themen 9
J coole Methoden Allgemeine Java-Themen 6
R Methoden in einem Thread unterschiedlich oft ausführen Allgemeine Java-Themen 4

Ähnliche Java Themen


Oben