在學習Java高級之前的一些想說的話 1.將會學到什麼? IO流 線程 網路編程 XML解析 設計模式 當然,真正的JAVA高級對於每個人或者每個組織的定義可能都不太一樣,這裡所講的java高級內容指的是Java裡面比較深層次一些的基礎內容,一個是學習起來可能難理解一些(難理解不代表難以學會來用,意 ...
在學習Java高級之前的一些想說的話
1.將會學到什麼?
- IO流
- 線程
- 網路編程
- XML解析
- 設計模式
當然,真正的JAVA高級對於每個人或者每個組織的定義可能都不太一樣,這裡所講的java高級內容指的是Java裡面比較深層次一些的基礎內容,一個是學習起來可能難理解一些(難理解不代表難以學會來用,意思是說在學習過程中,可能會用,但不一定理解),另一個是學會並熟練掌握這些內容可能會在以後的面試或者升職加薪中有更多的競爭力(大家可以去搜一下Java八股文,裡面很多面試題都會和線程、IO流、網路編程和設計模式有關)。
其中,
2.IO流
IO流是電腦用來對數據進行操作和處理的一種概念, 一般用於對文件的讀寫操作。 如果你經常使用U盤拷貝文件,一定會看到在拷貝文件時會有一些信息讀寫信息出來,這實際上就進行了一次IO流的操作。
剛纔我們說了,IO流一般用於對文件的讀寫操作,所以這一章節除了IO流外,我們還會學到對文件的操作,比如對文件的訪問、創建和刪除等。
2.線程
線程也是一個比較抽象的概念,但也是電腦基礎裡面很重要的一個概念。我們知道,所有的操作系統(比如win 11)肯定都是多個任務同時運行的,而每一個任務通常對應一個程式,而沒一個程式就是被一個進程。當一個程式運行時,內部可能會包含多個進程。
在這個章節里,我們需要瞭解什麼叫做線程和進程,知道線程的生命周期並學會使用和控制線程。感興趣的同學可以去看下Windows的任務管理器下去看下Windows裡面的進程和線程數
3.網路編程
現在,我們每個人機會都會在網路上進行衝浪,那麼我們的信息是如何發送到網上,又是如何下載的呢?其實如果要深究,這也是一個非常複雜的過程,在本章中,我們將會學習一些簡單的網路基礎知識,比如什麼叫TCP協議、什麼事套接字、以及使用Socket類進行單項通訊和雙向通信。
4.xml
xml是一種可擴展性標記語言,這個需要和html區分開來,一般用於標記數據和定義數據類型,而它的實際作用是用於在各個應用程式只見進行數據的傳輸。比如你從瀏覽器中獲取到了一些用戶的數據,這時程式A獲取到了,可能需要把這些數據給傳輸到B程式裡面,這時候A程式就需要用到xml對這些數據進行封裝(創建xml),然後發送到B程式裡面,B程式接收到後,如果要獲取到xml里的數據,就需要對齊進行解析,所以本章除了要瞭解什麼叫做xml外,還需要知道如何創建和解析xml文件。
5.設計模式
設計模式是軟體開發過程中前人總結下來的一些通用性解決方案,使用設計模式來編寫代碼,可以提高代碼的可重用性(意思是多個重覆的代碼只用寫一遍),代碼更容易讓人理解,已經代碼的質量會很可靠,由於不是每個人都是編程大佬,所以不是每個人都能夠在一開始的情況下就能夠寫出質量很高、重用性很強的代碼,但是我們可以站在巨人的肩膀上,使用前人的經驗,這樣我們才能提高效率,獲取更多的時間去做更有意義的事情。
當然本章所涉及到的很深奧的知識也不是很多,設計模式里我們主要講解單例模式,包括其使用場景、優缺點和簡單工廠模式的應用等等。
總的來說,JAVA高級程式設計說難難,說不難也難,難就在於可能有些知識點會比較難以理解,所以一開始我們很多同學可能會無法理解然後導致害怕而寸步難行,容易就容易在於如果你剋服了心理上的困難之後,去多寫幾遍應用的代碼,那麼用起來是肯定可以用起來的,等你的開發經驗越來越高,那麼你的理解程度也會越來越深。
最後,皇天不負有心人,這句話是真的, 千里之行始於足下也是真的,如果要學好,學扎實,還是得需要一步一個腳印踏踏實實每天進步一些些。
最後給大家推薦幾本書,網路上都是推薦一些神經兮兮的需要開發經驗的書籍的書,我覺得非常不妥,大家一看到萌新去看《Java編程思想》的文章就可以馬上離開了,因為萌新看不懂,我估計寫那個文章的人都沒看完這本書就隨便亂推薦。
如果大家以後有考研的想法或者是想對整個電腦體系有個大概的瞭解可以參考以下計本:
- 電腦操作系統(第四版) 西安電子科技大學出版社出版 (對應網路編程的線程和進程的知識)
- 電腦網路謝希仁第7版 (已經出到第八版,也可以看第八版)