Ich habe Java -Sprachbücher für Sie zuvor empfohlen. Das Folgende ist, Sie in die Aspekte vorzustellen, aus denen Sie mit dem Erlernen der Java -Sprache beginnen können. Der spezifische Inhalt ist wie folgt
1. Grundlagen der Java -Sprache
Wenn es um Bücher über grundlegendes Java -Sprachlernen geht, wird jeder auf jeden Fall Bruce Eckels "Thinking in Java" empfehlen. Es ist ein sehr tiefes technisches Buch geschrieben, und im Grunde kann kein anderes Buch in den Grundlagen der Java -Sprache übertreffen. Der Autor des Buches Bruce Eckel ist als geniale Spekulantin im Internet bekannt. Der Autor "Thinking in C ++" gewann 1995 den Software Development Jolt Award für das beste Buch. Seit 1986 veröffentlicht der Autor mehr als 150 Artikel über Computertechnologie, die 6 Bücher (4 davon um C ++) veröffentlicht und Hunderte von Reden auf der ganzen Welt gehalten haben. Er ist der Autor von Thinking in Java, Thinking in C ++, C ++ innen und außen, mit C ++ und Thinking in Mustern und auch der Herausgeber der Black Belt C ++ - Sammlung. Sein Buch heißt "Das beste Java -Nachschlagewerk ... absolut schockierend" von Lesern; "Die intelligenteste Wahl, um Java -Nachschlagewerke zu kaufen"; "Der beste Programmierleitfaden, den ich je gesehen habe". Das außergewöhnliche Talent und die extrem transzendente Sprachfähigkeit des Autors lassen den Autor als einer der 10 Charaktere mit der engsten Beziehung zu Java in den letzten 10 Jahren der Java -Entwicklung ausgewählt.
"Thinking in Java" erzählt alle Aspekte der Java -Sprache, und viele Java -Sprachveteranen kommentierten: "Dies ist ein Buch, das Java -Sprache ziemlich hässlich spricht." Das Buch spricht über viele Details der Java -Sprache, und jeder Aspekt ist ziemlich tiefgreifend. Durch dieses Buch können Sie die "hässliche" Java -Sprache sehen.
Es gibt viele Videos im Internet über Java -Spracherklärungen, unter denen die ungewöhnliche Müll ist. "Weng Kai-Java-Sprache" ist möglicherweise Ihre einzige Wahl, um die Grundlagen der Java-Sprache zu lernen. Der Vortrag wird im Grunde genommen im Buch "Thinking in Java" erklärt, das viele interessante Witze von Lehrer Weng enthält. Ich hatte das Glück, aus diesem Video zu lernen. Der Inhalt umfasst 30 Vorträge, und ich habe ihn insgesamt insgesamt angesehen.
Für Anfänger empfehle ich jedoch nicht, das Denken in Java zu verwenden. Ich empfehle Prentice Hall PTRs "Core Java 2" in China mit dem Namen "Java 2 Core Technology", der derzeit die siebte Ausgabe ist. Jeder kann die elektronische Version im Internet herunterladen. Oneillys "Java auf den Punkt gebracht" ist auch eine gute Wahl. Nachdem Sie die beiden oben genannten Bücher gelesen haben, können Sie das Video von Lehrer Weng Kai ansehen und dann „Thinking in Java“ studieren.
2. Java -Datenstruktur
Es gibt nur sehr wenige Bücher zu Java -Datenstrukturen auf dem Markt. Es gibt ungefähr Apresss "Java-Sammlungen", Jones und Bartletts "Datenstrukturen in Java", "objektorientierte Datenstrukturen mit Java" und "Datenstrukturen und Algorithmen in Java" veröffentlicht von Prentice Hall (19. Dezember 2005) und "Datenstrukturen und Algorithmen mit Objekt-orientierten Entwurfsmuster in java". Glücklicherweise war mein erstes englisches Buch Apress '"Java Collections" (dieses Buch hat möglicherweise überhaupt keine chinesische Version in China, kann aber nur die englische Version herunterladen). Es ist sehr gut und sehr regelmäßig und einfach. Es ist ein Buch, das die Java -Sammlungs -API vorstellt, einschließlich der umfangreichsten Beispiele für erweiterte APIs. Dies ist das einzige gute Buch, das ich Ihnen empfehle, um Java -Datenstrukturen zu lernen. Es scheint eine chinesische Version der beiden anderen Bücher von Jones und Bartlett in China zu geben. Wenn Sie es lesen möchten, können Sie es auch lesen.
Nachdem Sie die API gelernt haben, können Sie sich die entsprechenden Klassen im Java.util -Paket ansehen. Erst nach dem Erlernen des Entwurfsmusters können Sie jedoch den gesamten Framework Java -Sammlungen vollständig verstehen. Das Java -Sammlungs -Framework verwendet viele berühmte Designmuster wie Iteratormodus, Factory -Methodenmodus, Dekorateurmodus, Adaptermodus usw. Durch die Untersuchung des Quellcode von Datenstrukturen im Java.util -Paket können Sie das Design der berüchtigten Eigenschaftenklasse kennen und im Grunde die Möglichkeit haben, einfache Datenstrukturen zu entwerfen.
Das sogenannte Lernen ist endlos. Nachdem Sun den Java -Sammlungsrahmen nach dem Lernen zur Verfügung gestellt hat, können Sie einen anderen Java -Sammlungsrahmen von Apche studieren, was sehr interessant ist. Zwei Frameworks, die sich ergänzen.
Bevor Sie Java -Sammlungen lernen und studieren, möchte ich Sie daran erinnern, dass Java -Sammlungen hauptsächlich die folgenden drei Teile enthalten: Schnittstelle, Implementierung und Algorithmus.
1. Die Hauptschnittstellen sind Liste, Set, Warteschlange und Karte. Liste, SE T und Warteschlange sind Subinterfaces der Sammlungsschnittstelle.
2. Implementierung implementiert hauptsächlich bestimmte Klassen, die diese Schnittstellen implementieren. Wie ArrayList, LinkedList, Stack und Vector implementieren die List -Schnittstelle; Hashset, Treeset und LinkedHashset Implementierung der SET -Schnittstelle; Prioritätsqueue, Synchronousqueue usw. Implementierung der Warteschlangenschnittstelle; Hashmap, Treemap, Hashtable, Eigenschaften, WeaPhashMap usw. Implementierung der Kartenschnittstelle.
3. Der Algorithmus wird hauptsächlich von der Arrays -Klasse und der Sammlungsklasse bereitgestellt. Es ist der Kern des gesamten Java -Sammlungs -Framework -Algorithmus. Unterstützt gemeinsame Operationen wie die Sortierung und Suche verschiedener Typen.
Java -Sammlungen enthalten zwei Versionen von Datenstrukturen, hauptsächlich die ursprüngliche Datenstruktur, die die Synchronisation unterstützt, und die Datenstruktur, die die Synchronisation später nicht unterstützt.
Das Java Collection -Framework unterstützt die Sortierung mit Comparator und vergleichbaren Schnittstellen. Iterator und Enumeraton werden sowohl neue als auch alte Versionen sowie ihre Konvertierung usw. zur Verfügung gestellt.
Die beobachtbare Schnittstelle und Beobachterklassen im Java.util -Paket sind der Kern des Prüfungsmusters.
...
3. Java io
Es gibt nur zwei Bücher auf dem Markt, die beide Elliotte Rusty Harolds Werke sind. Die Stile der beiden Bücher sind im Grunde genommen gleich. Die empfohlene Lesung ist die erste Ausgabe von "Jvava I/O". Es ist kurz, der Inhalt ist relativ konzentriert und es gibt viele Beispiele. Die zweite Ausgabe wurde im Mai dieses Jahres im Ausland veröffentlicht. Ich habe das große Glück, die zweite Ausgabe im Internet herunterzuladen. Es war sehr detailliert und 726 Seiten des großen Kerls (ich benutze es seit zwei Wochen). Diesmal habe ich NIO und IO miteinander kombiniert, einschließlich des J2ME -Teils. Die seriellen und parallelen Kommunikationsteile scheinen jedoch für die Klassenbibliothek nicht ausreichend zu unterstützen und können sie nicht selbst bedienen.
OREILLY hat zusammen mit der ersten Version von "Jvava I/O" auch eine "Jvava nio", die ebenfalls sehr gut ist.
Nach dem Lesen von "Jvava I/O" und "Jvava Nio" können Sie den Quellcode im Java.io -Paket untersuchen. Bevor Sie den Quellcode studieren, werde ich Ihnen einige Tipps geben:
Die IO -Pakete von Java enthalten hauptsächlich:
1. Zwei Streams: Byte -Streams und Zeichenströme. Diese beiden Streams haben nicht die sogenannten ", die ersetzt, wer besser ist als wer besser ist als wer ist. Sie ergänzen sich gegenseitig, aber der Fokus ist anders.
2. Zwei Arten von Symmetrie: 1. Symmetrie von Byte -Streams und Zeichenströmen; 2. Symmetrie von Eingängen und Ausgängen.
3. Eine Brücke: InputStreamReader und OutputStreamWriter, der Byte -Streams in Zeichenströme umwandelt.
Unter ihnen müssen Sie darauf achten:
1. PipedInputStream und PipeDoutputstrem sind zwei weitere interessante Klassen.
2. Flows, die gepuffert werden, sind Klassen, die wir häufig verwenden.
3. Die berühmteste Anwendung des Dekorationsmusters in Java ist das Design von IO. Untersuchen Sie die Beziehung zwischen jedem Filterstrom und bestimmten Streams sorgfältig und lesen Sie mehr Bücher zu Designmustern. Ich glaube, Sie werden etwas bekommen.
4. Das Erlernen von guten IO -Paketen ist die Grundlage für das Studium von Netzpaketen, RMI -Paketen ...!
4. Java -Datenbank
Es gibt zu viele Bücher in der Datenbank, und es ist auch schade! Ich habe diese Art von Büchern im Grunde genommen untersucht. Wenn Sie es empfehlen, können Sie Apresss "JDBC Rezepte A Problem Solution Ansatz" überprüfen, der sehr gut ist. Es wurde Ende 2005 im Ausland veröffentlicht (es scheint, dass es in China keine chinesische Version gibt, aber es ist nicht unbedingt gelesen, wenn es in China veröffentlicht wird. China übersetzt oft ausländische Bücher durch Cha und unansehnlich), aber wir haben wirklich das Glück, dass es elektronische Versionen im Internet gibt. Einen Blick wert. Ich empfehle das erste Buch "Java Database Bible" von Wiley, mit dem ich zufrieden bin und sehr gut geschrieben ist! Das von Suns eigene Firma über die JDBC -API eingeführte "JDBC API -Tutorial und Refernece" ist ebenfalls gut. Mein zweites JDBC -Buch ist die API, die ich studiert habe.
Diese Bücher sind derzeit jedoch einige relativ oberflächliche API -Anwendungen. Wenn Sie die Gelegenheit haben, werde ich Ihnen ein Buch bringen, das die JDBC -API und die internen Details der JDBC -Implementierung vorstellt! Ich werde so schnell wie möglich hart arbeiten und hoffe, dass alle Unterstützung erhalten!
Übrigens möchte ich Freunden, die JDBC studieren, Tipps geben:
Das Lernen und die Verwendung von JDBC basieren hauptsächlich auf diesem API -Satz, und der Verwendungsprozess ist ebenfalls äußerst einfach. Das Folgende ist der allgemeine Prozess der Verwendung von JDBC:
1. Laden Sie den Treiber (Treiberklasse) einer Datenbank, normalerweise mit Class.Forname ("Treiberklassenname");
2. Verbinden Sie eine Verbindung zur Datenbank
Verbindung con = driverManager.getConnection (URL, Benutzername, Passwort);
3.. Erhalten Sie Sitzungsanweisung STMT = con.CreateStatement ();
4. Führen Sie das Operationsergebnis aus.
5. Verarbeitungsergebnisse
while (rs.Next ()) {
String col1 = rs.getString (1);
...
}
Es ist einfach! Was in der gesamten JDBC geändert werden kann, ist im Allgemeinen:
1. Die Anweisung, die Vorbereitung und die Callablestatement können aus dem Verbindungsobjekt erstellt werden.
2. Sie können mehrere Ergebungssets erstellen: Unterstützung von Einwegbewegungen und Freizügigkeit; aktualisierbar und nicht aktualisiert; Unterstützen Sie Transaktionen verschiedener Ebenen ...
3.. Batch -Verarbeitung von Dateneingaben.
4. Operationen von Spalten mit speziellen Typen (Blob, CLOB, Arrary, Ref, Struct) im Ergebnissatz.
5. Diese speziellen Arten von Eintragsdatenbanken.
6. Betrieb von Spezialergebnissen (Cachedrowset, JDBCrowset, Webrowset) im Javax.sql -Paket.
7. Der andere ist eine Datenquelle, die ebenfalls sehr einfach ist! Ein verwaltetes Objekt in J2EE
Es ist einfach! Ich glaube, jeder wird JDBC bald erobern.
5. Java -Netzwerkprogrammierung
Netzwerkprogrammierung ist eine mysteriöse und herausfordernde Richtung. Bevor wir jedoch über Java -Netzwerkprogramme sprechen, danken wir zuerst den Entwicklern von Sun, da ihre genialen Ideen und ihre intelligente Architektur Java -Programmierer extrem einfach machen, Java -Netzwerkprogramme zu lernen.
Für Java Network -Programmierbücher empfehle ich O'Reillys "Java Network Programming". Es war die dritte Ausgabe und die vorherige Version muss auf dem Markt verfügbar sein! Es gibt eine dritte elektronische Version im Internet, die 2004 im Ausland veröffentlicht wurde, 706 Seiten! Es ist sehr umfassend und ausführlich. Wenn es zu ausführlich ist, kann dies daran liegen, dass einige Dinge in der Sonne nicht vollständig offengelegt sind, daher ist es schwierig, darüber zu sprechen. Wenn Sie interessiert sind, können Sie herunterladen und einen Blick darauf werfen! Das zweite Buch ist "Java Distributed Computing", das 1998 von O'Reilly veröffentlicht wurde. Der grundlegende Teil ist ausführlicher geschrieben, und die nachfolgenden Beispiele sind immer noch einen Studium wert.
Bevor Sie diese Bücher lesen, möchte ich Ihnen einige Tipps geben:
Die Java -Netzwerkprogrammierung ist eigentlich relativ einfach und es ist auch sehr schnell, loszulegen. Die Java -Netzwerkprogrammierung enthält hauptsächlich zwei Teile: 1.Socket; 2. Teil. Der zweite Teil basiert jedoch auch vollständig auf dem ersten Teil.
1.Socket enthält Client -Socket und Serversocket. Es gibt auch DataGramSocket und DataGrampacket, die dem UDP -Kommunikationsprotokoll entsprechen. Kurz gesagt, Socket-Teil ist die Grundlage für die Einrichtung anderer hochrangiger Protokolle.
2. Die URL -Klasse ist ein Netzwerk -Ressourcen -Locator, der normalerweise mit bestimmten Netzwerkprotokollen wie HTTP, FTP, Telnet ... diese Klasse in dieser Klasse im Netzwerk verbinden kann, und der Openstream kann die Netzwerkressourcen in Form eines Streams (InputStream) im IO -Paket lesen. Durch seine OpenConnection -Methode kann eine Verbindung geöffnet werden, und nicht nur der Lesevorgang kann abgeschlossen werden, sondern auch der Schreibvorgang kann abgeschlossen werden.
Die Netzwerkprogrammierung von Java enthält im Allgemeinen die oben genannten zwei Teile. Die Netzwerkprogrammierung ist sehr nahe an IO- und Multi-Threading-Teilen. Bevor Sie diesen Teil lernen, müssen Sie diese beiden Teile gründlich verstehen.
Nachdem Sie den obigen Abschnitt gelernt haben, können Sie den darüber im Java.net -Paket bezogenen Quellcode untersuchen! Es ist zu früh, um den gesamten Quellcode zu studieren. Das gesamte NET -Paket umfasst: ContentHandlerFactory, UrlStreamHandlerFactory, UrlStreamHandler, UrlClassloader und andere Hilfsklassen. Sie bilden das Framework der Java.net -Netzwerkprogrammierung. Durch das Studium des Quellcode können Sie das Java.net -Paket nicht nur schnell verstehen, sondern auch die Grundlage für die Erweiterung des Pakets in Zukunft legen und diese Denkweise sogar auf Ihre eigenen Projekte anwenden.
Bisher sollten Sie nur 60% des Java.net -Pakets kennen. Es gibt auch einen Teil, den Sie Decompiler -Software wie JDECompiler verwenden können, um das Rt.jar im Verzeichnis/jdkxxx/jre/lib in Ihrem JDK -Installationsverzeichnis zu öffnen. Verwenden Sie Software wie Winrar, um sein Sun.net -Paket zu öffnen und alle Dateien zu dekompilieren. Es ist ein Detail der URL -Klasse. Nach dem Studium des Sun.net -Pakets sind Sie mit der gesamten Netzwerkprogrammierung sehr vertraut.
Alles scheint mit der Netzwerkprogrammierung vertraut zu sein. Eigentlich ist es nicht der Fall. Es ist nur der Anfang. Wenn Sie tiefer gehen möchten, fahren Sie bitte fort! Viele ausgezeichnete Netzwerkprogrammierbibliotheken und sogar Software im Internet können uns "Fähigkeiten hinzufügen". Beispielsweise sind Apache HTTPCORE und HTTPCONNECTION zwei Bibliotheken im Zusammenhang mit dem HTTP -Protokoll; JGroups ist eine Mussbibliothek für das Studium verteilter Kommunikation und Gruppenkommunikation. Anschließend können wir P2P-Softwarepakete wie Suns Jxta untersuchen, die möglicherweise der zukünftige Standard für die Punkt-zu-Punkt-Kommunikation auf der Java-Plattform sein! Dann können Sie die extrem reife P2P -Software Azureus recherchieren und verwenden! www.sourceforge.net kann heruntergeladen werden!
Eine Reise von tausend Meilen beginnt mit einem einzigen Schritt! Tun Sie es einfach! (Gegenwärtig habe ich das Nettopaket nur untersucht, und die anderen werden in naher Zukunft weiterhin tiefer gehen. Sun hat aus irgendeinem Grund keine anderen Implementierungsdetails des Netzes offengelegt. Wenn er zulässt, dass sein Quellcode in Textform studiert und seine unveröffentlichte Implementierung in das Buch geschrieben wird, hoffe ich wirklich, ein Buch über Java -Netzwerkprogramme zu veröffentlichen.)
6. Servlet und JSP
Servlet- und JSP -Bücher sind auch überall! Es gibt nur zwei oder drei Bücher, die es wert sind, empfohlen zu werden. Ich empfehle tatsächlich Addison Wileys "Servlets and JavaServer Pages: The J2ee Technology Web Tier", ein weiteres sehr dickes Buch! Es wird 2003 im Ausland, 784 Seiten veröffentlicht, auf relativ umfassende Weise erläutert und enthält viele Beispiele, insbesondere Kapitel 8 -Filter, was einige gute Beispiele gibt. Alle anderen Bücher, die ich über Servlets und JSP gesehen habe, sind nicht so ausführlich! (Es kann sein, dass ich es nicht gesehen habe). O'Reillys "Java Servlet -Programmierung" und "Java -Serverseiten" sind relativ leicht zu verstehen. Sie können es lesen!
Bevor Sie Servlet und JSP lernen, möchte ich Sie immer noch daran erinnern:
Im Wesentlichen ist Servlet nur ein Programm, das die Servlet -Schnittstelle implementiert und auf der Serverseite bereitgestellt wird! Es kann wie das Schreiben einer anderen Java -Anwendung geschrieben werden. Es kann Datenbanken betreiben, lokale Dateien betreiben und eine Verbindung zu lokalen EJBs herstellen ... Der allgemeine Prozess zum Schreiben von Servlet -Programmen lautet:
1. Erben Sie eine httpServlet -Klasse;
2. Überschreiben Sie seine Dotget- und Dopost -Methoden;
3. Die Parameter der internen Betriebsmethode httpServletRequest und httpServletResponse werden auf der Override -Methode durchgeführt.
V. Mit HttpServletRequest können Sie den Protokollheader des HTTP -Protokolls bedienen, die Betriebsmethode der Anforderung abrufen, den Pfad der Anforderung abrufen, die Anforderung an die Anforderung abrufen und Informationen im Zusammenhang mit dem Anforderungsclient beziehen. Noch wichtiger ist, dass Sie die beiden Objekte erhalten können: Cookie und httpSession.
5. Mit Cookies können Sie das "Schatz" -Objekt bedienen oder es an die httpServletResponse schreiben.
6. Sie können httpServletResponse verwenden, um Informationen an Kunden auszugeben. Verwenden Sie HTTPServletResponse, um verschiedene Arten von Protokollheadern zu schreiben, Cookies hinzuzufügen, andere URLs umzuleiten und den Statuscode des HTTP -Protokolls an Kunden zu senden.
7. Verwenden Sie HTTPSession, um jede Funktion, die Sie in der Sitzung implementieren möchten, auszuführen.
Gleichzeitig bietet Servlet auch einige Ereignis- und Event -Hörer (nur einfacher Beobachtermodus). Es gibt auch die Verwendung von Filtern (Filtern) und Wrappern (ServletRequestWrapper, ServletResponseWrapper).
Das Erlernen von Sevlets und JSPs muss auf dem Server bereitgestellt werden. Machen Sie sich einfach an die Schritte und Parameter der üblichen Dateibereitstellung und der Verwendung im Programm.
Nach dem vollständigen Verständnis von Servlet ist es relativ einfach, JSP zu lernen! JSP basiert ausschließlich auf Servlets, und es ist nur darum, Programmierer zu richten, die Skripte in HTML -Dokumente einbetten (z. B. Webprogrammiersprachen wie PHP)! Es ist ziemlich einfach zu lernen!
Alles scheint so ruhig und leicht zu lernen! Es gibt komplexe Mechanismen hinter einfachen Erscheinungen. Um Servlets und JSP gründlich zu untersuchen, müssen Sie die spezifische Implementierung von Open -Source -Software wie Tomcat untersuchen. Es ist nichts weiter als ein Server. Nachdem der Client die Webseite verwendet hat, um eine Anforderung über das HTTP -Protokoll an den Server zu senden, wandelt der Server die HTTP -Anforderung in das entsprechende HTTPServletRequest -Objekt um und ruft das von Ihnen geschriebene Servlet auf. In Ihrem Servlet müssen Sie diesen httpServletRequest bedient und gleichzeitig die httpServletResponse betrieben haben. Der Server verwendet das HTTP -Protokoll, um dieses HTTPServletResponse gemäß den Anforderungen des HTTP -Protokolls an Ihren Browser zu senden! Nachdem die JSP -Webseite auf dem Server vom Client angefordert wurde, verwendet Tomcat die Compilation Software, um diese JSP -Datei mithilfe der Vorlage im Paket javax.servlet.jsp zu kompilieren, und nach der Kompilierung wird es ein Servlet sein! Die zukünftigen Operationen sind genau die gleichen wie die von Servlets!
Basierend auf Servlets und JSP sind die sogenannten fortschrittlichen Technologien: JSTL, Streben ... nichts anderes als die Verwendung einiger Tags und MVC-Muster.
Mach weiter vorwärts! Der Sieg ist voraus! !
7. Multi-Threading
Eine Richtung, die mysteriös aussieht, aber leicht zu beginnen und schwer zu beherrschen ist!
Ich empfehle zwei Bücher, bei denen ich mich sehr gut fühle. Zunächst war ich das erste Buch, das ich in diesem Bereich lesen konnte. "Java Thread Programming", veröffentlicht von Sams 1998. Es ist gut geschrieben und leicht zu verstehen. Ich lese oft Notizen aus dieser Zeit, in der ich Zeit habe! Sie sollten wissen, wie man es selbst macht! Das zweite Buch "Java Threads", das dreimal von Oreilly veröffentlicht wurde, ist die neueste Version im Jahr 2004. In China scheint es eine chinesische Version zu geben. Ich empfehle Ihnen, die englische Version zu lesen! Das Buch spricht über N -Anweisungen zum Multithreading, wie IO, Swing, Sammlung usw.
Lassen Sie mich Ihnen ein paar Tipps geben! Es gibt nicht viele Klassen, die sich auf Multithreading in der Java -Klassenbibliothek beziehen, hauptsächlich: Thread, ThreadGroup, ThreadLocal und InheritablethreadLocal und eine runnable Schnittstelle; Schlüsselwort synchronisieren und volatil; und warte, benachrichtigen, benachrichtigen Sie die Methoden von Objektobjekten!
1 Thread ist eine Kernklasse von Multi-Threading, die eine Reihe von Methoden zum Erstellen und Betrieb von Multi-Threading bietet.
2 ThreadGroup ist eine Werkzeugklasse zum Verwalten von Thread.
3 ThreadLocal und inheritableTheadLocal bieten Thread eine Klasse, die Thread -Objekte speichert, die sich auf sichere Funktionen ähneln!
4 Runnable Unno zu sagen!
5 Synchronize ist der Kern von Synchronisationsmethoden und Synchronisationsblöcken! Wenn mehrere Threads diese Methode aufrufen, kann nur ein Thread diese Methode und andere Methoden blockieren, wodurch die Integrität des internen Zustands des betriebenen Objekts sichergestellt wird. Wenn ein Thread eine Methode aufruft oder mit Synchronisierung blockiert wird, wird die Objektsperrung des Objekts erhalten. Nach Abschluss des Betriebs im Block wird die Objektschloss freigegeben, damit andere Objekte weiter funktionieren können.
6 Warten Sie, benachrichtigen, benachrichtigen Sie einen effektiven Mechanismus zum Warten-/Benachrichtigungsmechanismus. Jedes Objekt in der Java -Sprache hat eine Lounge. Jeder Thread ruht in der Lounge des Objekts, wenn der Status des von ihm betriebenen Objekts nicht erfüllt ist, und freisetzt die Objektschloss. Wenn andere Threads das Objekt bedienen, wecken sie die Threads in der Lounge, überprüft dann die Bedingungen und führen den entsprechenden Betrieb durch, wenn die Bedingungen erfüllt sind.
Es gibt ungefähr so viele Grundlagen im Multi-Threading! Ist es einfach! Dies sollte für einen echten Programmierer nicht ausreichen. Sie müssen einige Kenntnisse über Multi-Threading haben. Bitte studieren Sie das Paket java.util.concurrent! Die Arbeit von Master Doug Lea war ursprünglich eine open -Source -konsequente Programmierbibliothek, wurde jedoch später von Sun in die Java -Klassenbibliothek aufgenommen. Es gibt eine andere Version dieser Bibliothek auf der Website des Autors! Gutes Zeug, das es sich zu studieren lohnt! Open -Source -Software wie Winterschlaf und OpenJMS haben dieses Paket verwendet!
8. Designmuster
Wenn es um Designmuster geht, werden viele Menschen das GoF -Buch empfehlen. Dieses Buch ist ein fünfsterne empfohlenes Buch bei Amazon. Für diejenigen, die Java schon lange nicht mehr lernen, insbesondere diejenigen, die Anfänger in Java sind, empfehle ich dieses Buch nicht. Der Hauptgrund ist, dass die Beispiele in diesem Buch im Grunde genommen in C ++ liegen und viele Details nicht klar genug erklärt werden.
Das erste Buch, das ich Ihnen empfehle, ist Dr. Yan Hongs "Java and Muster". Es ist das erste Buch über Designmuster der Chinesen. Es ist sehr interessant und integriert viele Kulturen und Konzepte der chinesischen Nation. Es gibt viele Beispiele und Bilder, und sie sind relativ einfach! Sehr gute Einführungsbücher und ein großer Kerl!
Zweitens empfehle ich drei von Wiley Publishing House veröffentlichte "Muster in Java". Ich habe gerade den ersten gelesen. Es scheint, dass der zweite nicht sehr gut ist und der dritte nicht gut ist!
Das dritte Buch ist die chinesische Übersetzungsversion von "Java Multi-Threaded Design Muster", das 2003 vom China Railway Publishing House veröffentlicht wurde. Es erklärt das Multi-Thread-Modell sehr kurz, mit einer großen Anzahl von Legenden, in jedem Kapitel Übungen und schließlich eine Antwort! Ich habe damit angefangen, als ich den Multithreading -Modus studierte!
Das vierte Buch, The Head First -Serie von "Head First Design Muster", das in diesem Jahr veröffentlicht wurde, hält die Vorteile der Chef First -Bücher -Bücherreihe mit einer großen Anzahl von Klassendiagrammen, reichhaltigen Beispielen und interessanten Anmerkungen, die es wert sind, gekauft zu werden!
Zweitens können Sie in der J2EE -Richtung "Muster der Enterprise Application Architecture" studieren und lesen, die 2002 von Addison Wesley veröffentlicht wurden. Es hat viele Werke mit großen Namen, in denen über die Integration von Unternehmensinformationen gesprochen wird! "J2ee Muster SL500" von Sun ist auch sehr gut! Ich empfehle den 4einhalb-Stern-"Holub on Musters" von Amazon, das ein Master-Werk ist und Beispiele liefert, die es wert sind, zu studieren. Leser, die mit den oben genannten vier Büchern nicht sehr vertraut sind, ist es jedoch am besten, es nicht zu lesen! Es kann dich müde machen!
Ich habe einen sehr gewundenen Weg durchlaufen, um Designmuster zu lernen, und las über 20 Bücher. Ich habe Dr. Yan Hongs "Java and Muster" 4 Mal gelesen und ausgeschlossen, dass ich das erste Mal im Grunde nicht verstanden habe! Ich erinnere mich, dass der Lehrer uns das GoF -Buch während meines ersten Studienjahres beigebracht hat. Als Wahlkurs war ich bei ihren Master- und Doktoranden in der Computerabteilung. In der letzten Klasse haben 40-50 Personen, nicht mehr als 3 Menschen verstanden, und ich habe nichts verstanden (ich weiß nichts über C ++-Sprache, wenn die Stiftung schlecht ist). Mit meiner Persönlichkeit, nicht zu verlieren, dachte ich, mein Verständnis der Java -Sprache sei in Ordnung, also habe ich "Java und Muster" geliehen, aber ich habe es im Grunde noch nicht verstanden. Glücklicherweise hörte ich in meinem dritten Jahr der Graduiertenschule einen Vortrag über Java OOP -Sprache von Herrn Rao Ruonan von der Universität Shanghai Jiaotong an. Nachdem ich die drei Entwurfsmuster wie das Kombinationsbuchmodell verstanden hatte, interessierte ich mich für andere Modelle und hatte den Wunsch, sie zu erobern! Das erste Buch, das ich nach der Arbeit gekauft habe, war "Java und Muster". Ich habe 2 Monate lang im ersten Mal diesen großen Kerl mit mehr als 1.000 Seiten studiert. Später konnte ich es in ungefähr 15 Tagen nach dem dritten Mal beenden und nahm viele Notizbücher! Von da an war es außer Kontrolle.
Wählen Sie das richtige Buch und konzentrieren Sie sich auf die Forschung. Ich glaube, ich werde bald anfangen!
Java -Sprache zu lernen 8 einfache Teile ist nur der Beginn unserer Forschung zur Java -Sprache! All dies wird bestenfalls verstanden, ein Java -Programmierer, und die Straße vor uns ist sehr lang! Wir können weiterhin den Quellcode der Datenbankimplementierung, den Quellcode von Servlet Server, RMI, EJB, JNDI, Aspekt-orientierte Programmierung, Rekonstruktion, Ant-Tools, Eclipse-Tools, Feder-Tools, Jboss, Jonas, Apache Geronimo und andere J2EE-Server untersuchen! Nachdem Sie diese untersucht haben, sind Sie möglicherweise eine hervorragende J2EE -Architektur! Sie können weiterhin Analysatoren, Compiler, JNode (Betriebssystem von Java) nachforschen ...
Für weitere aufregende Buchlisten klicken
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.