Java Mächtigkeit verlierend?

Feeder

Bekanntes Mitglied
Hey, ich persönlich kann ja nur Java und sie ist sozugagen meine Mutterprache im programmieren. Jedoch beginne ich nun komplexere Programme zu schreiben und habe das Gefühl das Java mittlerweile weniger kann als sie sollte.
Es spielgelt sich in der Swing wieder. Ich kann zwar mit:

Java:
implements ButtonModell  extends JComponent

einen Button der rund ist machen, aber ganz erhrlich das ist doch nicht das.

Wieso macht man nicht eine AbstarctJComponet und sowas.
Zudem bei den Threads:

th.stop() Depcrated
stattdessen th.interrupt was den Thread nur indirekt schließt.

Kann das sein, das Java schwächer ist als sie in dieser Zeit sein sollte....
 

JavaMeister

Gesperrter Benutzer
Also ich kann schon mal sagen, dass deine Threads auch weniger können, als sie sollten.

Denn erstens zeigt dein Thread, dass Du deine Muttersprache nicht beherrscht, zweitens bevor du überhaupt zu solchen Aussagen kommst, viel mehr "komplexere" Programme schreiben solltest.

1. Siehe: Component (Java Platform SE 7 )

Ist genau das, was ich von deiner "AbstractJComponent" erwarten würde. Ob das stimmt, kann ich natürlich nicht sagen, da ich deine Anforderungen nicht kenne, noch den Sinn, der sich hinter dieser Forderung besteht. Aber das steht ja in meinem Eingangssatz.

2. Wie indirekt schließt? - Wobei ich weiß was du meinst, aber wieso sollte das nachteilig oder "schlecht" sein?

Wenn dein Thread gerade in auf der Platte schreibt, du der Meinung bist: JETZT IST SCHLUSS. Was dann? - Deswegen soll man Threads in den Selbstmord treiben.

Wenn diese naütlrich schlecht implementiert sind, werden sie auf jenes Interrupt nicht hören.

Aber wie gesagt: Noch viel zu lernen du musst.
 

Gucky

Top Contributor
Das Java weniger mächtig ist, als z.B. C++ ist klar. Java ist da sehr "abgespeckt", was Java allerdings auch stark vereinfacht.

Mit Java kannst du alles programmieren, was du dir vorstellen kannst, bis auf native Dinge, wie direkte Hardwarezugriffe. Java ist also bei weitem mächtig genug.
interrupt ist, wie mein Vorredner schon sagte wesentlich besser, da du den Thread nicht beendest, egal was er grade tut, sondern du ihm sagst, er solle sich doch bitte beenden, wenn er mit seiner aktuellen Aufgabe fertig ist.


Wenn dir Swing nicht gefällt, gibt es noch AWT, JavaFX, Qt und sicher auch noch mehr. Du hast also die freie Wahl. ;)
 
Zuletzt bearbeitet:

Gucky

Top Contributor
C++ lernen und professionell anwenden, 3. Auflage.
Darin wird ausführlich beschrieben, wie man in C++ programmiert. Vergleicht man das mit Java, so erkennt man, dass Java viele Konzepte von C++ übernommen hat. Viele allerdings auch nicht. So sind Zeigerarithmetik, und direkter Hardwarezugriff nur zwei Beispiele dafür. Das Java dadurch schlechter ist, sage ich nicht. Aber Java kann weniger als C++, was ich mit geringerer Macht gleichsetze.



PS: nur weil etwas depracated ist, heißt das nicht, dass du es nicht benutzen kannst. Die Warnung kannst du abschalten und dann ist stop() eine ganz normale Methode, wie alle Anderen auch. Das ist mehr ein Hinweis denn einem Gesetz.
 
Zuletzt bearbeitet:

JavaMeister

Gesperrter Benutzer
C++ lernen und professionell anwenden, 3. Auflage.
Darin wird ausführlich beschrieben, wie man in C++ programmiert. Vergleicht man das mit Java, so erkennt man, dass Java viele Konzepte von C++ übernommen hat. Viele allerdings auch nicht. So sind Zeigerarithmetik, und direkter Hardwarezugriff nur zwei Beispiele dafür. Das Java dadurch schlechter ist, sage ich nicht. Aber Java kann weniger als C++, was ich mit geringerer Macht gleichsetze.

Also das ist keine Quelle, sondern deine Meinung. Sollte man ein wenig differenzieren.
 

Gucky

Top Contributor
Da halte ich Differenzierung für überflüssig. Javas Funktionsumfang ist geringer und sie trägt das Korsett des JRE -> weniger Macht.

Oder zeig mir doch begründet eine gegenteilige Meinung, wenn du schon meinst, man solle differenzieren. ;)
 

JavaMeister

Gesperrter Benutzer
Eine Quelle würde explizit die von dir genachte aussage beinhalten. Und dann ggf. Schlüssig herleiten. Denn weniger Funktionen würde erstmal nicht weniger mächtig sein.

Die von dir angesprochene zeigerarithmetik ist in Java nicht vorhanden. Die Frage ist, ob das die Mächtigkeit der Sprache einschränkt. Ich programmiere auf meinen raspberry sehr wohl Hardware nah und es gibt entsprechende vms die das auch für die Automobil brache ermöglichen.

Daher hat es mich interessiert, ob es zu deiner persönlichen Meinung auch eine fundierte wissenschaftliche Quelle gibt. Wie du mehrfach betont hast, kennst du dich ja noch nicht so gut aus. Die Differenzierung, die hier gemacht werden muss und das sage ich ständig ist aussagen zu treffen, weil das die eigene Meinung ist, oder eben entsprechende Aussagen der Fachliteratur.

Du sagst etwas und der Javaanfänger nimmt es für bare münze. Und ich habe "du" geschrieben meine aber viele andere User auch.

Auch der to hat eine Meinung. Hat eine These aufgestellt. Leider total willkürlich und nicht durchdacht. Das ist ein Problem von vielen.
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Fakt ist aber das Java weniger Funktionen hat, als C++, da z.B. die Zeigerarithmetik fehlt. Zeigerarithmetik ist extrem schnell aber genau das fehlt in Java.

Meiner Meinung nach sorgt das dafür, dass Java weniger mächtig ist, als C++.

So gut? ;)
 

JavaMeister

Gesperrter Benutzer
Ich habe die Aussage nicht bestritten. Noch gesagt, dass ich damit nicht einverstanden bin.

Es muss klar sein, und das ist es nach deinem vorherigen Post, das es sich hier um deine Meinung handelt und du dir das selber ausgedacht hast und dies erstmal nicht mit der Fachliteratur belegt werden kann.

Ob die Aussage stimmt oder nicht weiß ich nicht. Möchte ich auch nicht wissen. Und schon gar nicht darüber Stammtischdiskussionen führen ;))
 

Joose

Top Contributor
Zeigerarithmetik ist extrem schnell aber genau das fehlt in Java.

Aber genau das macht es einfacher Java zu lernen. Außerdem muss man sich in C++ selbst um das Freigeben von Speicher kümmern.

Und ob eine Sprache nun weniger oder mehr Funtkionen hat als eine andere sagt noch nichts über die "Mächtigkeit" aus.

Jede der Sprachen hat ihre Vor- und Nachteile.
 

Gucky

Top Contributor
Woran würdest du denn sonst die Mächtigkeit eines Sprache festmachen, wenn nicht an Funktiosumfang?

Ich weiß, dass Java dadurch einfacher ist. Etwas dagegen habe ich auch nie gesagt. Ich sage nur, dass C++ sich eine höhere Mächtigkeit mit größerer Kompliziertheit erkauft.
 

Joose

Top Contributor
Woran würdest du denn sonst die Mächtigkeit eines Sprache festmachen, wenn nicht an Funktiosumfang

Daran welche Sprache für welches Problem geeigneter ist. (da auch hier jeder seine eigene Vorlieben hat sei mal dahin gestellt)

Für eine Kundenverwaltung werde ich nicht auf C++ setzen, der Performance Unterschied nur minimal spürbar wäre (wenn überhaupt) und sich dabei keiner mit der Speicherverwaltung rumschlagen will.

Bei hoch komplexen Berechnungen wobei auch Performance gefragt ist wird man eher auf C++ setzen als auf Sprachen wie Java, C#, ...
 

Gucky

Top Contributor
Aber es ist dennoch möglich mit C++. Und so schwer ist die Speicherverwaltung gar nicht. ;)

Ich bin der Meinung, C++ sei mächtiger, ihr seid der Meinung es stimme nicht und wir können uns gegenseitig nicht vom Gegenteil überzeugen. :D
 

turtle

Top Contributor
Ich hoffe es handelte sich um Ironie.

Und so schwer ist die Speicherverwaltung gar nicht.
:applaus::noe:

Na, DAS ist ja mal eine gewagte Aussage.

Die Mühe Fehlern in der Speicherverwaltung auf die Schliche zu kommen, war mein Hauptgrund auf Java zu wechseln:)
 

Joose

Top Contributor
Klar kann ich die Kundenverwaltung in jeder x beliebigen Sprache schreiben.
Und dass die Speicherverwaltung "schwer" ist habe ich auch nirgends behauptet.

Es ging mir nur darum: Der Funktionsumfang alleine reicht nicht um zu sagen das eine Sprache mächtig ist. Bzw. ist nirgends definiert was eine Sprache mächtig macht.
 

Gucky

Top Contributor
Sie ist schon schwerer als der Garbage Collector aber an vielen Stellen lese ich immer wieder, wie unsagbar schwer die manuelle Speicherverwaltung doch ist und es sei unmöglich sich da nicht zu vertun.

Aber ja. Ein bisschen Ironie war in der Aussage schon drin. :D
 

Feeder

Bekanntes Mitglied
Wer hat den gesagt das ich sie beherrsche :) Ich sagte relativ behersche das heißt den Grundsyntax... Wenn wir in die Bibliotheken gehen ist schnell schluß
 

lord239123

Bekanntes Mitglied
Meiner Meinung nach kann man die beiden Sprachen nicht wirklich miteinander vergleichen.
C++ besitzt zwar einige Funktionen mehr, wie etwa Zeiger, aber Java ist dafür leichter zu erlernen.
Dazu machen z.B. Sachen wie der GarbageCollector oder etwa die Plattformunabhängigkeit Java zu einem mächtigen Werkzeug.
Auch einfache Anwendung gehört zumindest meiner Meinung nach zur Mächtigkeit einer Sprache dazu.

Der größte Vorteil an C++ gegenüber Java ist allerdings unbestritten die hardwarenahe Programmierung!
Dies lässt sich in Java nur über Schnittstellen zu anderen Sprachen realisieren, womit die Plattformunabhängigkeit verloren geht.
 
Zuletzt bearbeitet:

kaoZ

Top Contributor
Mit Java kannst du alles programmieren, was du dir vorstellen kannst, bis auf native Dinge, wie direkte Hardwarezugriffe

JNA, JNI wäre hier die qual der wahl wenn mich nicht alles täuscht ;)

Nichts ist unmöglich ...... Da wo die Vielseitigkeit aufhört fangen die API's an ;P
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
KonradN Java 21 Release Allgemeine Java-Themen 5
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
G java.io.listFiles() Allgemeine Java-Themen 3
8u3631984 Frage zu Java Streams min / max Allgemeine Java-Themen 17
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
K Java-Projekt Allgemeine Java-Themen 11
K Java-Projekt Allgemeine Java-Themen 0
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
rode45e Java Threads Allgemeine Java-Themen 4
G java.io.listFiles() Allgemeine Java-Themen 2
N Java Dynamic Proxy Allgemeine Java-Themen 3
N Leichte Java Gegner Ki Allgemeine Java-Themen 10
A Java modul Problem Allgemeine Java-Themen 4
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
V Funktionale Schnittstelle in Java Allgemeine Java-Themen 3
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
KonradN Java 20 am 21. März Allgemeine Java-Themen 1
O Java Website Stock Bot Allgemeine Java-Themen 3
J Front-/Backend in Java Allgemeine Java-Themen 14
doopexxx JAVA Google Webcrawler Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
lalex1491 Java Aktienkurse nachfragen Allgemeine Java-Themen 4
J Class to link Java Allgemeine Java-Themen 4
V Wie funktioniert das Schlüsselwort "final" von Java? Allgemeine Java-Themen 19
mrStudent Inferenz JAVA Allgemeine Java-Themen 6
U URI Rechner (Java Script) Allgemeine Java-Themen 7
TheSkyRider Java Geburtsdatum Textfeld Allgemeine Java-Themen 7
mihe7 Java 19 JavaDocs: Browserintegration Allgemeine Java-Themen 0
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
H Java Rechner Programmierung der Mathematik Allgemeine Java-Themen 33
Lennox Schinkel Java Kara Auf einen Java Host laufen lassen Allgemeine Java-Themen 17
C Fußnoten von DocX mit Java Allgemeine Java-Themen 2
C Fußnoten in DocX mit Java Allgemeine Java-Themen 1
M Aussagenlogik in Java Programmieren Allgemeine Java-Themen 22
B Per Java Word Dokument schreiben? Allgemeine Java-Themen 8
krgewb Java-Bibliothek für ONVIF Allgemeine Java-Themen 1
KonradN Oracle übergibt (Java Teile der) GraalVM Community Edition an OpenJDK Community Allgemeine Java-Themen 2
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
B Java mit command line und jars benutzen? Allgemeine Java-Themen 18
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
Mick P. F. Wie kriege ich die Fehlermeldung "java: symbol lookup error: ..." weg? Allgemeine Java-Themen 11
K Nachhilfe Java Allgemeine Java-Themen 11
KonradN Java 19 Allgemeine Java-Themen 11
F IDEA IntelliJ Java Songliste erstellen Allgemeine Java-Themen 6
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
Sachinbhatt Sind alle Methoden in Java implizit virtuell Allgemeine Java-Themen 2
E Java und integrierte Grafikkarten Allgemeine Java-Themen 18
Sachinbhatt Wie wird die Typumwandlung bei Mehrfachvererbung in Java implementiert? Allgemeine Java-Themen 3
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
A Java unter Win 10 Allgemeine Java-Themen 1
B Woher kommen die Bildschirmkoordinaten beim java Robot? Allgemeine Java-Themen 14
P9cman java.Lang Klassen fehlen in JRE System Library Allgemeine Java-Themen 1
T Java Robot Class - Bot Allgemeine Java-Themen 3
E Wie Java Heap Space vergrößern? Allgemeine Java-Themen 3
B Java Programm auf virutellem Desktop laufen lassen? Allgemeine Java-Themen 1
D VBA Code mit Java ausführen möglich? Allgemeine Java-Themen 10
berserkerdq2 Threads, wie genau läuft das in Java ab? (Ich kann Threads erstellen und nutzen, nur das Verständnis) Allgemeine Java-Themen 6
izoards Java Home Pfad unabhängig von der Version Allgemeine Java-Themen 7
N JAVA-Code mit Grafikfenster zeichnet in Windows, aber nicht Mac. Allgemeine Java-Themen 4
L Java überprüfen lassen, ob sich ein gegebener Pfad / das Programm an sich auf einer CD oder Festplatte befindet Allgemeine Java-Themen 14
KonradN CVE-2022-21449: Fehler in Java bei Signaturprüfung Allgemeine Java-Themen 20
berserkerdq2 Java sql Allgemeine Java-Themen 15
JordenJost Unverständlicher Java code? Allgemeine Java-Themen 21
LimDul XSD To Java - Überschreiben von Assoziationen Allgemeine Java-Themen 1
Aartiyadav Comparisons and Swapa in Bubble-sort Java Allgemeine Java-Themen 6
KonradN Java 18 Allgemeine Java-Themen 8
N Statistische Auswertung von Logfiles (Einlesen, auswerten und grafische Aufbereitung von logfiles) mit Java Allgemeine Java-Themen 9
ME2002 Fragen aus einer Java Klausur Allgemeine Java-Themen 67
Z Mit Java 8+ Streams Zeilen nummern zu Zeilen hinzufügen Allgemeine Java-Themen 17
M Verständnisfrage java.util.TimerTask Allgemeine Java-Themen 2
V Hilfe mit Java Code Allgemeine Java-Themen 4
S Processing Java Code verstehen Allgemeine Java-Themen 4
O Newton Algorithmus Java Allgemeine Java-Themen 1
P Java Quellen finden Allgemeine Java-Themen 3
M Java Analyse/ SWOT-Analyse Allgemeine Java-Themen 13
J c Programm läuft nicht in compilierter Version des Java Projektes Allgemeine Java-Themen 7
Atten007 Java-Klasse auf macOS entpacken? Allgemeine Java-Themen 2
E java mithilfe url .jar datei öffnen Allgemeine Java-Themen 9
M Warum hat Java dieses und jenes nicht... Allgemeine Java-Themen 8
E Java .exe Datei mit args starten Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben