Programmieren mit Java - simple Frage

FCBayern

Neuling
Thread Starter
Mitglied seit
27.11.2012
Beiträge
252
Hallo Leute,

ich beginne in ein paar Monaten ein Studium zum Scientific Programming und daher fange ich nun an mich darauf vorzubereiten, in dem ich mir das Javaprogrammieren selbst beibringe(n will).
Dazu habe ich mir ein Buch geholt. Dort wird alles Schritt für Schritt erklärt (von Grund auf) und vorallem so, dass man es selbst nachmachen kann.

Da ich absoluter Programmierneuling bin habe ich ein für Profis simples (wenn nicht lächerliches) Problem:

in dem Buch ist von jsdk (java software developement kit) die Rede und daher habe ich es mir natürlich gedownloaded und installiert

anschließend soll man einige Befehle in einen Editor eintppen, daraus ergibt sich die 1. Frage:
welcher editor ist am besten geeignet? und lässt es sich auch mit dem standart editor von microsoft machen? (letzteres bezweifle ich)

nach dem eintippen soll man das dann abspeichern und vom java-compiler in den java byte code übersetzen lassen
daraus resultiert meine 2. Frage: wie mache ich das?

Wie oben schon erwähnt, ist es mir bewusst, dass es sehr simple fragen sind, jedoch halten sie mich schon seit gestern vom Weiterlernen ab :/

schon mal vielen dank!!!
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Ähm, sind die Fragen ernst gemeint?

Du kannst jeden x-beliebigen Editor verwenden, Notepad++, VI, Emacs, haumichtot, völlig egal. Am Ende soll halt eine TXT-Datei rauskommen.

Zum Übersetzen:

javac HelloWorld.java
 
Ähm, sind die Fragen ernst gemeint?
Verdirb Anfängern nicht den Spaß.

Ja, der Editor ist egal. wie TubroCharged schon sagte. Nimm für Windows am besten Notepad++. Syntaxhighlighting (hervorheben von Java-Schlüsselwörtern) ist drinnen, was dir hilft. Von vi und emacs würde ich als Anfänger weg bleiben.

Programm compilen: javac <deine Datei>
Programm ausführen: java <deine mit javac erstellte Datei>
 
Nun ja, solche Sachen werden in jedem Buch beschrieben, auf den ersten Seiten.

Alternativ: einmal googeln man hat die Antwort.

Aber nein, da wird ein Thread dafür erstellt, wo die Zeit die Frage zu schreiben deutlich länger ist als die Antwort selbst zu finden.
 
Zuletzt bearbeitet:
Ja, der Editor ist egal. wie TubroCharged schon sagte. Nimm für Windows am besten Notepad++. Syntaxhighlighting (hervorheben von Java-Schlüsselwörtern) ist drinnen, was dir hilft. Von vi und emacs würde ich als Anfänger weg bleiben.

Danke für diese hilfreiche Antwort! ich hatte mir nach TurboChargeds Antwort schon GNU emacs runtergeladen und war schon bei der Installation, nun greife ich lieber zu Notepad++
habs es installiert und gefällt mir auf den ersten Blick sehr gut, da es den Buchabbildungen ähnelt. :)

Nun werde ich es mal testen und gucken ob es nun klappt.


@ TurboChanged

ich habe gegooglet und auch auf der 1. Seite nachgelesen, da ich dort angefangen habe. es war sicherlich nicht meine erste idee direkt einen Thread zu eröffnen und da mir bewusst war, dass irgendjemand kommt und so reagiert wie du habe ich mehrfach betont, dass ich absolut unerfahren im Programmieren bin und daher lautete auch der Titel ,,[...] simple Frage''
von daher kann ich deine destruktive Kritik nicht nachvoll und weiß auch nicht was ich noch hätte schreiben sollen um zu verdeutlichen das die Frage ernst gemeint war
 
Zuletzt bearbeitet:
Ich würde auch eher Notepad++ empfehlen.

Unerfahren sein ist absolut okay, jeder hat mal angefangen. Aber ich erwarte halt auch etwas Eigeninitiative, nicht falsch verstehen ;-)
 
TurboCharged,
ich auch aber am Anfang, und dann noch im Alleingang, drücke ich ein Auge zu. :)
 
Wirklich - Java in Notepad++? Nur weils Highlighting drin ist?
Nimm lieber die Eclipse IDE - in der werden auch in den großen Firmen die Programme entwickelt...
 
Bevor du jedes mal mühseelig von hand via konsole kompilierst - habe notepad++ jetzt noch nicht in verbindung mot java benutzt aber ich bin mir zu 99% sicher du kannst den compiler/debugger auch einbinden, so dass du direkt aus dem editor heraus dein peoframm starten kannst (idR ahortcut via f5)

Probiers mal aus, könnte mir fast vorstellen er fragt dann direkt nach dem pfad des compilers oder dergleichen

Gesendet von meinem GT-I9300 mit der Hardwareluxx App
 
Ne eclipse kann ich nicht empfehlen, da manchmal probleme, und manchmal fehler gefunden werden wo keine sind und dann erst nach neustart von eclipse alles läuft.
 
Genau das würde ich gerade am Anfang nicht machen.

Man sollte schon verstehen, was da abgeht, wenn man aus dem .java File ein .class File erstellt.

Für den Anfang ist Eclipse eher hinderlich.
 
Hab jetzt nach ca 2 jahren programmieren keine Probleme mehr mit eclipse, aber für anfang ist es nicht das beste.
 
also das Editor Problem ist dank euch nun gelöst :)

aber mit dem compiler habe ich noch Probleme
ich habe in der zwischenzeit sehr viele Seiten gelesen und habe denen entnommen dass der compiler in dem java sdk enthalten ist (so wie ich es mir anfangs dachte) aber ich weiß nicht wie ich ihn nun nutze bzw wie ich öffne (wenn dies überhaupt möglich ist) denn wenn ich in den ordner gehe wo Java installier ist und auf java klicke öffnen sich für einen sekundenbruchteil ein schwarzesfenster mit weißer schrift (mehr kann ich auf grund der geringen Zeit nicht erkennen)

und daher weiß ich leider nicht wie ich (Zitat von Murazor) ,,Programm compilen: javac <deine Datei>
Programm ausführen: java <deine mit javac erstellte Datei> " umsetze
 
In der Windows-Konsole kannst du das ausführen...
Aber mal im Ernst du willst Scientific Programming studieren und hast 0 Ahnung wie man überhaupt im Ansatz programmiert? Na dann noch viel Spaß...
 
Wirklich - Java in Notepad++? Nur weils Highlighting drin ist?
Nimm lieber die Eclipse IDE - in der werden auch in den großen Firmen die Programme entwickelt...

Klar werden sie das. Aber was lernt er schon vom Programmieren, wenn Eclipse ihm die Hälfte der Arbeit abnimmt. Dann hat er auch nichts gelernt.
 
In der Windows-Konsole kannst du das ausführen...
Aber mal im Ernst du willst Scientific Programming studieren und hast 0 Ahnung wie man überhaupt im Ansatz programmiert? Na dann noch viel Spaß...

ok danke :)

das Studium fängt bei 0 an und setzt keinerlei Kenntnisse vorraus
da diese jedoch von vorteil sind bringe ich mir nun java selbst bei und werde ich die vorseminare besuchen
das dürfte machbar werden
 
@FCBayern:

Ganz einfach, im CMD:

set PATH=<HIER_HABE_ICH_JDK_INSTALLIERT>\bin;%PATH%

danach einfach in dem Verzeichnis, wo Du das .java-File erstellt hast:

javac <Dein.java>

und fertig ist.
 
@TurboCharged

habe das mal eingetippt, erst kam zugriff verweigert, daher habe ich es als Administrator ausgeführt und dann konnte es den ersten Schritt eintippen

beim 2. Schritt kommt jedoch immer nur Syntaxfehler



Hier ist erstmal das Screenshot von meinem Eingetippten
N 03.05.2013 155504.jpg
gespeichert habe ich die Datei natürlich unter Berechnung.java

logischerweiser soll nach dem compilern 7 rauskommen.
im Buch steht: ,,Das Ergebniss ist 7"
 
Zuletzt bearbeitet:
Mittlerweile habe ich die von Janchu88 angesprochene Möglichkeit direkt in Notepad++ zu compelieren gefunden.
die mache ich so wie bei compile java in notepad++ - YouTube erklärt wird.

leider ist folgendes das Ergebniss:

CD: f:\
Current directory: f:\
javac Berechnung.java
CreateProcess() failed with error code 2:
Das System kann die angegebene Datei nicht finden.

java Berechnung
Process started >>>
Fehler: Hauptklasse Berechnung konnte nicht gefunden oder geladen werden
<<< Process finished. (Exit code 1)
================ READY ================


Wo kann der Fehler liegen?
Ich habe alles so abgetippt wie es im Buch steht und auch mehrfach kontrolliert (kann ja sen dass ich irgenwo etwas vergessen habe, denn wenn selst über seine texte schaut kommt es ja gelegentlich vor dass man einen Fehler jedes mal übersieht) und auch ,,System.out.println (.....); " brachte keinen Erfolg
 
hmm musst du nicht, wenn du das starten willst, auf der eingabezeile folgendes eingeben?

java Berechnung.java

und dann halt return drücken. Ich glaube er findet die Datei erst garnicht, weil Du die Dateiendung nicht mit angegeben hast. Hab aber von java selbst keine Ahnung, daher könnte es Quatsch sein, was ich schreibe.
 
Leider brachte das auch nichts :/

kennt den jemand etwas noch simpleres bzw etwas wo er mir bei Fehlern weiter helfen könnte (also ein einfach Programm, dass dieser jemand schon selbst programmiert hat)
ich habe in Tutorials immer wieder von HelloWorld gelesen, war vom Umfang her ähnlich wie diese Berechnung daher habe ich es noch nicht versucht.
Werde Sonntag dann mal das besagte HelloWorld programmieren.
Habe leider Morgen keine Zeit und heute Abend lass ich es lieber bevor es nicht klappt und ich wieder Stunden dran sitze
 
Wo hast du denn Berechnung.java abgespeichert? Dein obiger Post sieht so aus als wenn der java-Compiler deine Datei erst garnicht findet und dann auch nicht compilieren kann. Kopier die mal versuchweise in das Installationsverzeichnis von Java Development Kit und kompilier das ganze dann nochmal.
 
Ich habe die in der bibliothek unter Pictures abgespeichert (ist ne Angewohnheit Datein die ich häufig braucht, Downloads ect in Pictures abzuspeichern :bigok:)
diese Bibliothek befindet sich wie angegeben auf dem Laufwerk F also der Verweis ist hergestellt oder muss ich das genauer bzw anders angeben?
 
ich glaube nicht, dass Java weiß, wo die Datei zu finden ist. Wenn Du die in einen anderen Ordner abspeicherst, dann müsstest Du wohl javac einen kompletten Pfad angeben. Also zum Beispiel so:
javac C:\Users\DEIN_BENUTZERNAME\Pictures\Berechnung.java
So würde das bei mir unter Windows 7 aussehen, wenn ich diese Datei bei den Bildern abgespeichert hätte.
 
Zuletzt bearbeitet:
tut sich immer noch nichts...
dafür dass man mich anfangs fragte ob die Frage ernst gemeinst war scheint es jedoch gar nicht mal so simpel zu sein^^ (nicht böse gemeint bin wirklich dankbar dass man mir hilft und immerhin habe ich jetzt schon einen Fortschritt - die richtigen Programme- gemacht)

Ps: ich habe Mittlerweile mal HelloWorld verucht und da hat es geklappt! :)
Ist wie ich befürchtet hatte, es ist gleich 1 uhr :wall:
habe es jetzt wie im Youtube-video nur mit dem Editor und der Cmd gemacht, werde dass dann Sonntag auch mal mit Notepad++ und dem darin integrierten Compiler testen! Ein Anfang ist gemacht!!

Morgen werde ich leider nur gegen 8 uhr einmal kurz reinschauen können und dann erst Sonntag, würde mich freuen wenn in der zwischenzeit jemand etwas nützliches postet! :)
 
Zuletzt bearbeitet:
Hab das Probelm nun gelöst!!! war alles richtig Programmiert, nur der Dateipfad war das Problem
Lösung: verschieben auf Desktop, cmd : cd Desktop und dann die beiden Befehle
Die Antwort lautet ,,7" (welch ein Wunder)
vielen Dank an alle die geholfen haben und sich Gedanken gemacht haben.
Thread kann nun geschlossen werden
 
public class Wochentag {
public static void main (String[] args) {
int t = 14; //Tage
int m = 5; //Monat
int j = 2013; //Jahr

{int a = j - 2000; //verstrichene Jahre

if (a==0) { //Fall m = 2000

if (m == 1) {
int n = 31; }
if (m == 2) { // Monat Februar
int n = 31 + 28; }
if (m<8) { //Monate Maerz-Juli
if (m%2 == 0) {
int n = (m/2)*31 + 28 + (m/2 - 1)*30; }
else {
int n = (m/2 + 1)*31 + 28 + (m/2-1)*30; }
}

if (m>7) { //Monate August-Dezember
if ((m-7)%2 == 0) {
int n =(4*31 + 28 + 2*30) + ((m-7)/2 + 1)*31 + ((m-7)*30); }
}
int b = n + t;
if (b%7==0) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Montag."); }
if (b%7==1) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Dienstag."); }
if (b%7==2) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Mittwoch."); }
if (b%7==3) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Donnerstag."); }
if (b%7==4) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Freitag."); }
if (b%7==5) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Samstag."); }
if (b%7==1) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Sonntag."); }

}
else { //m > 2000
int c;
if (m==1) {
int n = 31; }
if (m==2) { // Monat Februar
int n = 31 + 28; }
if (m<8) { //Monate Maerz-Juli
if (m%2==0) {
int n = (m/2)*31 + 28 + (m/2 - 1)*30; }
else {
int n = (m/2 + 1)*31 + 28 + (m/2-1)*30; }
}

if (m>7) { //Monate August-Dezember
int n =(4*31 + 28 + 2*30) + ((m-7)/2 + 1)*31 + ((m-7)*30);
}
c = a*365 + n + t;
if (c%7==0) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Montag."); }
if (c%7==1) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Dienstag."); }
if (c%7==2) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Mittwoch."); }
if (c%7==3) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Donnerstag."); }
if (c%7==4) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Freitag."); }
if (c%7==5) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Samstag."); }
if (c%7==1) {
System.out.print("Der " + t + "." + m + "." + j + "ist ein Sonntag."); }
}
}
}
}


beim compilieren kommt immer dass das symbol n in den Zeilen nicht gefunden werden kann (hier rot gefärbt)
woran liegt das? ich habe es ja schließlich definiert
(es soll ein Programm sein dass nach der Datumeingabe den Wochentag berechnet - bisher habe ich die schaltjahre noch nicht mit eingezogen da ich das grundgerüst erst ein mal zum laufen kriegen will)
die Vatiable b und c stellen die gesamten tage dar
 
Zuletzt bearbeitet:
So wie es aussieht, hast Du "n" innerhalb einer Abfrage deklariert. Darum kennt er die Variable außerhalb dieser Abfrage natürlich nicht. Schreibe oben einfach mal int n = 0;, wo die Variablen t usw. deklariert sind.
 
Lade Dir auf jeden Fall Eclipse runter und entwickle damit. An dem Tool wirst Du sowieso nicht vorbeikommen, da quasi Industrie-Standard. Also je früher Du Dich damit beschäftigst umso besser für Deine Programmierer-Karriere...

Hier mal Dein Programm korrigiert:

public class Wochentag{

public static void main(String[] args) {
int c, n = 31, t = 14; // Tage
int m = 5; // Monat
int j = 2013; // Jahr
String Wochentage[] = new String[] { "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag",
"Sonntag" };

int a = j - 2000; // verstrichene Jahre

if (a == 0) { // Fall m = 2000

if (m == 2) { // Monat Februar
n = 31 + 28;
}
if (m < 8) { // Monate Maerz-Juli
if (m % 2 == 0) {
n = (m / 2) * 31 + 28 + (m / 2 - 1) * 30;
} else {
n = (m / 2 + 1) * 31 + 28 + (m / 2 - 1) * 30;
}
}

if (m > 7) { // Monate August-Dezember
if ((m - 7) % 2 == 0) {
n = (4 * 31 + 28 + 2 * 30) + ((m - 7) / 2 + 1) * 31 + ((m - 7) * 30);
}
}
int b = n + t;

System.out.print("Der " + t + "." + m + "." + j + " ist ein " + Wochentage[b % 7]);

} else { // m > 2000

if (m == 2) { // Monat Februar
n = 31 + 28;
}
if (m < 8) { // Monate Maerz-Juli
if (m % 2 == 0) {
n = (m / 2) * 31 + 28 + (m / 2 - 1) * 30;
} else {
n = (m / 2 + 1) * 31 + 28 + (m / 2 - 1) * 30;
}
}

if (m > 7) { // Monate August-Dezember
n = (4 * 31 + 28 + 2 * 30) + ((m - 7) / 2 + 1) * 31 + ((m - 7) * 30);
}
c = a * 365 + n + t;

System.out.print("Der " + t + "." + m + "." + j + " ist ein " + Wochentage[c % 7]);

}
}
}
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh