国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Java javaLernprogramm Java OOP: Woche Das OOP-Abenteuer geht weiter

Java OOP: Woche Das OOP-Abenteuer geht weiter

Jan 08, 2025 am 06:18 AM

Java OOP: Week  The OOP Adventure Continues

In meiner ersten Woche habe ich allgemeine Themen zu OOP erw?hnt, wobei ich in kurzer Zeit einiges über diese Themen lernen konnte Zeitspanne. Allerdings gab es noch Themen zu behandeln. Da dies nur die Grundlagen von OOP sind, bin ich gerade dabei zu entscheiden, ob Java die Sprache sein wird, auf die ich mich 100 % konzentrieren m?chte Auch nach dem Studium muss ich sagen, dass ich aufgrund meiner Erfahrung im Testen eine besondere Vorliebe für das Backend habe, was vielleicht der Fall ist ein Faktor bei meiner Entscheidung sein.


W?hrend dieser zweiten Woche hatte ich nicht viel Zeit, Themen wie Threads, Enums oder Generika zu besprechen, die ich anh?ngig war. Ich bin jedoch mit einem kleinen Projekt weitergekommen, bei dem es um die Simulation eines Restaurants ging, in dem die folgenden Aktionen ausgeführt werden k?nnen:

  • Produkte oder Mahlzeiten erstellen ?
  • Bestellungen aufgeben basierend auf diesen Produkten und angeben, wie viele davon verbraucht wurden.
  • Einzelbestellung anzeigennach dem Hinzufügen.
  • Alle Bestellungen anzeigen, mit der Option, so viele Bestellungen hinzuzufügen, wie der Benutzer m?chte.

Ich habe es haupts?chlich erstellt, um alle Aspekte von OOP abzudecken, einschlie?lich der Datenvalidierung, und um die Logik weiter zu praktizieren. Ich habe es fast fertig, füge aber noch Details hinzu; Ich werde es in mein Repository hochladen, sobald es fertig ist.


Zus?tzlich habe ich ein weiteres OOP-Thema und andere Themen behandelt, die ?u?erst nützlich sind.

Welche? Relationale Klassen, Try-and-Catch und Dateien.

Ich werde kurz erw?hnen, wie nützlich diese Themen für mich waren und wie ich ihre praktischen Anwendungen verstehe.


Relationale Klassen

Relationale Klassen sind ein Thema, für das ich einige Zeit gebraucht habe, um es zu verstehen und anzuwenden. Sobald man jedoch den Dreh raus hat, lassen sie sich einfach umsetzen. Ich habe dieses Konzept am h?ufigsten als 1-zu-N-Beziehung verwendet, die verwendet wird, um mehrere Objekte einer Klasse B mit einer Klasse A.

Wenn ich beispielsweise m?chte, dass ein

Auto mehrere Besitzer hat, ben?tige ich eine Beziehung von der Klasse ?Owners“ zur Klasse ?Cars“.

Im Car-Klassenkonstruktor muss eine

Liste (ich habe ArrayList verwendet) übergeben werden, und diese Liste wird basierend auf Objekten aus dem Owner-Konstruktor erstellt. Somit wird der Besitzer mit seinen Attributen (Name, Alter, ID usw.) mit einem Autokonstrukteur verknüpft, der Objekte mit diesen Eigenschaften erstellen kann.

Hier ist ein einfaches Beispiel, das zeigt, wie eine 1-zu-N-Beziehung angewendet wird: https://pastebin.com/dX6SDWwp

Dies ist nützlich, wenn Sie bestimmte Objekte mit anderen ?verbinden“ müssen, sodass Sie eine direkte Beziehung haben und sie nicht nur durch Arrays oder eine andere Methode verbunden sind.


Try and Catch ??

Die Verwendung von try und catch in Java habe ich h?ufiger implementiert als in der anderen Sprache, die ich verwendet habe. Ich denke, das liegt daran, dass meine IDE automatisch die Verwendung von Try and Catch für einige Ausnahmen vorschl?gt, die dies erfordern.

Dieses Thema ist einfach ein Highlight im Vergleich zu einer anderen Sprache wie C , wo ich es nur sehr wenig verwendet habe und andere Techniken bevorzugt habe, um Fehler zu vermeiden. Allerdings gew?hne ich mich allm?hlich daran, Try and Catch zu verwenden, um Fehler vorherzusagen und pl?tzliche Systemabstürze zu vermeiden.


Dateien – JSON/GSON – Serialisierung und Deserialisierung ?

Das Arbeiten mit Dateien in Java nahm letztes Wochenende 70 % meiner Lernzeit in Anspruch. Trotzdem habe ich das Gefühl, dass es im Vergleich zu C etwas mehr Informationen und Beispiele gibt, wo ich auch die Dateinutzung mit Matrizen implementiert habe, um Daten zu verwalten, ohne sie neu zu schreiben.

Dies war nützlich für Systeme wie:

  • Warenk?rbe
  • Bestandsverwaltung
  • Bestellungen oder jedes System, bei dem eine Datenspeicherung erforderlich ist.

In diesem Fall muss ich mit Java Objekte verwenden, also beinhaltet dies Serialisierung und Deserialisierung.

Hier ist mir ein gro?er Unterschied aufgefallen, da die Schreibweise stark von der gewünschten Datenart abh?ngt. Mein Hauptproblem, das Stunden der Recherche erforderte, war, dass die Zeichen, die ich in meiner TXT-Datei gespeichert habe, beim ?ffnen der Datei im Bin?rformat erschienen, aber als Zeichen in der Konsole.

Ich habe online herausgefunden, dass es

zwei M?glichkeiten gibt, Daten zu lesen und zu schreiben:

    über
  • Bytes
  • über
  • Zeichen
Die von mir verwendete Methode war bytebasiert, da ich

Objekte direkt übergeben habe.

Ich fühle mich noch nicht sachkundig genug, um die Unterschiede zwischen den verschiedenen Verwendungsm?glichkeiten der Writer- und Reader-Unterklassen zu erl?utern, aber ich arbeite an einer übung aus der Praxis Dabei verwende ich Objekte, die in einer ArrayList gespeichert sind, und lerne, wie man serialisiert und deserialisieren sie mit GSON (um die Objekte in ihrem Zustand innerhalb des Systems in einer .json-Datei beizubehalten) und schreiben diese Daten dann in eine .txt-Datei, um sie als Datens?tze in einem zu speichern organisierter Weg.


Abschluss

Letzte Woche habe ich nicht so viele Fortschritte gemacht, wie ich es mir gewünscht h?tte, aber die Arbeit mit Dateien hat viele Stunden Recherche und Anwendung in Anspruch genommen und Konzeptdifferenzierung, wobei Teile aus jedem Artikel, den ich überprüft habe, entnommen werden, um ein Endergebnis zu erzielen, das ich in einem testen werde ?echtes“ Projekt und erz?hlen Sie, wie es gelaufen ist.

Es ist wichtig zu erw?hnen, dass diese spezielle Handhabung und das von mir erw?hnte Szenario mit GSON und .txt etwas ist, was ich für die Universit?t tun muss. Es gibt jedoch andere M?glichkeiten, wie JPA oder Datenbanken, um damit umzugehen. Es ist nicht unbedingt erforderlich, GSON und .txt zu verwenden, um Daten in einem System zu verwalten.


Es gibt nichts mehr hinzuzufügen: Wenn jemand etwas zu Dateien oder den von mir genannten Themen zu sagen hat, k?nnen Sie gerne einen Kommentar abgeben und Ihre Vorschl?ge teilen!

Viel Spa? beim Codieren! ?

Das obige ist der detaillierte Inhalt vonJava OOP: Woche Das OOP-Abenteuer geht weiter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Unterschied zwischen Hashmap und Hashtable? Unterschied zwischen Hashmap und Hashtable? Jun 24, 2025 pm 09:41 PM

Der Unterschied zwischen HashMap und Hashtable spiegelt sich haupts?chlich in der Gewindesicherheit, der Nullwertunterstützung und der Leistung wider. 1. In Bezug auf die Gewindesicherheit ist Hashtable Thread-Safe, und seine Methoden sind haupts?chlich Synchronmethoden, w?hrend HashMap keine Synchronisationsverarbeitung durchführt, die nicht mit Thread-Safe ist. 2. In Bezug auf die Nullwertunterstützung erm?glicht HashMap einen Nullschlüssel und mehrere Nullwerte, w?hrend Hashtable keine Nullschlüssel oder -Werte zul?sst, sonst wird eine Nullpointerexception geworfen. 3. In Bezug auf die Leistung ist HashMap effizienter, da kein Synchronisationsmechanismus vorhanden ist und Hashtable für jeden Vorgang eine niedrige Verriegelungsleistung aufweist. Es wird empfohlen, stattdessen eine Concurrenthashmap zu verwenden.

Warum brauchen wir Wrapper -Klassen? Warum brauchen wir Wrapper -Klassen? Jun 28, 2025 am 01:01 AM

Java verwendet Wrapper-Klassen, da grundlegende Datentypen nicht direkt an objektorientierten Operationen teilnehmen k?nnen und Objektformen h?ufig in den tats?chlichen Bedürfnissen erforderlich sind. 1. Sammelklassen k?nnen nur Objekte speichern, z. B. Listen verwenden automatische Boxen, um numerische Werte zu speichern. 2. Generika unterstützen keine Grundtypen, und Verpackungsklassen müssen als Typparameter verwendet werden. 3.. Verpackungsklassen k?nnen Nullwerte darstellen, um nicht festgelegte oder fehlende Daten zu unterscheiden. 4. Verpackungsklassen bieten praktische Methoden wie String -Conversion, um die Analyse und Verarbeitung von Daten zu erleichtern. In Szenarien, in denen diese Eigenschaften ben?tigt werden, sind Verpackungsklassen unverzichtbar.

Was sind statische Methoden in Schnittstellen? Was sind statische Methoden in Schnittstellen? Jun 24, 2025 pm 10:57 PM

StaticMethodsinInterfaces -reisEtroducucuedInjava8toalloytilityFunctionSwitHinTheInterfaceItEp.beejava8, solche Funktionen, dieseparatehelperklassen, führendemTodisorganizedCode.Now, StaticMetheSprovidreefits: 1) theeneNableable -theenableaby

Wie optimiert JIT Compiler den Code? Wie optimiert JIT Compiler den Code? Jun 24, 2025 pm 10:45 PM

Der JIT -Compiler optimiert den Code durch vier Methoden: Methode Inline, Hotspot -Erkennung und -vergleich, Typespekulation und Devirtualisation sowie die Eliminierung des redundanten Betriebs. 1. Methode Inline reduziert den Anrufaufwand und fügt h?ufig kleine Methoden direkt in den Anruf ein. 2. Erkennung und Hochfrequenzcodeausführung und zentral optimieren, um Ressourcen zu sparen. 3. Typ Spekulation sammelt Informationen zum Laufzeittyp, um Devirtualisation -Anrufe zu erzielen und die Effizienz zu verbessern. 4. Redundante Operationen beseitigen nutzlose Berechnungen und Inspektionen basierend auf den Betriebsdaten, wodurch die Leistung verbessert wird.

Was ist ein Instanz -Initialisiererblock? Was ist ein Instanz -Initialisiererblock? Jun 25, 2025 pm 12:21 PM

Instanzinitialisierungsbl?cke werden in Java verwendet, um die Initialisierungslogik beim Erstellen von Objekten auszuführen, die vor dem Konstruktor ausgeführt werden. Es ist für Szenarien geeignet, in denen mehrere Konstruktoren Initialisierungscode, komplexe Feldinitialisierung oder anonyme Szenarien der Klasseninitialisierung teilen. Im Gegensatz zu statischen Initialisierungsbl?cken wird es jedes Mal ausgeführt, wenn es instanziiert wird, w?hrend statische Initialisierungsbl?cke nur einmal ausgeführt werden, wenn die Klasse geladen wird.

Was ist das 'Final' -Styword für Variablen? Was ist das 'Final' -Styword für Variablen? Jun 24, 2025 pm 07:29 PM

InvaVa, theFinalKeywordPreventsAvariable von ValueFromBeingumedAfterasssignment, ButitsBehaviordiffersForprimitive und ANSPRIMITIVEVARIABLE, FinalMakesthevalueconstant, AsinfinalIntmax_speed = 100; WhirerastsignmentcausaSesSaSesSaSesSaSaSesSaSesSaSaSesSaSaSesSaSesSesirror

Was ist das Fabrikmuster? Was ist das Fabrikmuster? Jun 24, 2025 pm 11:29 PM

Der Werksmodus wird verwendet, um die Logik der Objekterstellung zusammenzufassen, wodurch der Code flexibler, einfach zu pflegen und locker gekoppelt ist. Die Kernantwort lautet: Durch zentrales Verwalten von Logik der Objekterstellung, das Ausblenden von Implementierungsdetails und die Unterstützung der Erstellung mehrerer verwandter Objekte. Die spezifische Beschreibung lautet wie folgt: Der Fabrikmodus gibt Objekterstellung an eine spezielle Fabrikklasse oder -methode zur Verarbeitung und vermeidet die Verwendung von NewClass () direkt; Es ist für Szenarien geeignet, in denen mehrere Arten von verwandten Objekten erstellt werden, die Erstellungslogik sich ?ndern und Implementierungsdetails versteckt werden müssen. Zum Beispiel werden im Zahlungsabwickler Stripe, PayPal und andere Instanzen durch Fabriken erstellt. Die Implementierung umfasst das von der Fabrikklasse zurückgegebene Objekt basierend auf Eingabeparametern, und alle Objekte erkennen eine gemeinsame Schnittstelle. Gemeinsame Varianten umfassen einfache Fabriken, Fabrikmethoden und abstrakte Fabriken, die für unterschiedliche Komplexit?ten geeignet sind.

Was ist Typ Casting? Was ist Typ Casting? Jun 24, 2025 pm 11:09 PM

Es gibt zwei Arten von Konvertierung: implizit und explizit. 1. Die implizite Umwandlung erfolgt automatisch, wie z. B. das Konvertieren in INT in Doppel; 2. Explizite Konvertierung erfordert einen manuellen Betrieb, z. B. die Verwendung (int) MyDouble. Ein Fall, in dem die Typ -Konvertierung erforderlich ist, umfasst die Verarbeitung von Benutzereingaben, mathematische Operationen oder das übergeben verschiedener Werte zwischen Funktionen. Probleme, die beachtet werden müssen, sind: Umdrehung von Gleitpunktzahlen in Ganzzahlen wird der fraktionale Teil abschneiden, gro?e Typen in kleine Typen zu einem Datenverlust führen, und einige Sprachen erm?glichen keine direkte Konvertierung bestimmter Typen. Ein ordnungsgem??es Verst?ndnis der Regeln der Sprachkonvertierung hilft, Fehler zu vermeiden.

See all articles