-
1 # 溫馨的醬牛肉
-
2 # 編碼大叔
其實學習java如果有c語言基礎會有很大幫助,尤其是對jvm和gc等方面,不過當前如果沒有學習過,也無所謂,因為目前jvm gc方面都是一些引數,所以也無須過多在意,基礎學好,比如資料結構等等學好了,會有很大幫助的
-
3 # 程式碼
Java是一門面向物件的程式語言,如果學習過其它程式語言,學習Java會更容易一些。
首先,需要學習程式語言的基本結構:分支和迴圈;基本語法;資料型別;主要保留字。這些都是面向過程的程式語言的基本功。學會編寫一些簡單演算法
其次,學習面向物件的概念,類、介面、屬性、方法。繼承、多型、封裝、過載、重寫等特性。掌握JDK常用類的使用。學會編寫一些類完成對資料庫的操作。
最後,學習一些流行的開源框架,如Spring,Mybatis等,鑽研一些常用的設計模式。
祝你早日精通Java語言!
-
4 # 早七
作為一名非科班出身的java程式猿,我覺得我是有一些經驗來回答一下這個問題的。我是2014年從事java開發的,大學學的是工業工程,雖然也是工程類的專業但是計算機核心課程的知識卻不多。頂多也就是像c語言和資料庫等一些課程。所以計算機的基礎知識也是薄弱。從2014年至今已經5年了,目前崗位是java高階開發工程師。雖然還不是架構師,不過這幾年過來也有很多感想,我覺得可以和你分享一下。
回想自己這幾年的成長路程大概可以總結為這幾個階段。
第1個階段:剛入行程式設計師,我考慮的主要是主動承擔更多的開發任務來提升自己,在此期間提升自己的方式主要是透過部落格,網站,少量的影片教程來提升自己的技術能力。這個階段主要還是提升自己的工作能力為主。
第2個階段:過了幾年覺得單純的承擔開發任務已經不能顯著提升自己了,自己就開始瘋狂買書。在此期間買了很多計算機理論的書。比如作業系統,演算法,編譯原理,網路,雲計算等等。不過這些書你應該懂得,實在是又厚又難懂而且還貴,到目前也沒能深入進去。不過簡單瞭解後,我就從之前的不知道自己不知道什麼轉換成了知道自己不知道什麼了。想想也真是不容易。也算是一點進步吧。
第3個階段:自己開始玩起了網站,我買了阿里雲的伺服器,開始搭建自己的部落格網站,並開始寫部落格。到目前為止大概有200篇博文了。不過我感覺寫了這麼多,也只是簡單的總結或者介紹。雖然寫了這麼多,自己的技術水平也有提高,不過後來提升的也就不多了。
第4個階段:考證書。後來我就考了軟體設計師和PMP的證書。考PMP的證書主要還是考慮到可能會從事專案經理的工作。不過軟體設計師我覺得還是有幫助的。裡面包含了計算機幾乎所有的基礎知識,推薦你也去考。軟考裡面還有好多證書可以考。軟體設計師是中級證書,中級證書裡還有其他幾種,比如網路,安全,資料庫等等。這些證書對於計算機的基礎知識都會覆蓋。不過這些證書對於工作中應用並不多,不過這些都是基礎,如果基礎不好確實難以有更高的發展。
第5個階段:學習架構師相關的課程。目前我正在學習的是java架構師的課程,以後可能還會考取軟考高階的系統架構師證書。來不斷提升自己。
-
5 # 電商小生
Java平臺無關性如何實現?首先我們看一張圖片:
Java平臺無關性.png(1)Java原始碼首先要被編譯成位元組碼,接著Java虛擬機器透過編譯好的.class檔案進行解析,載入進記憶體,並執行相應的機器指令,。不同平臺的指令集不同,如Linux、Win、IOS,Java虛擬機器可以對.class檔案解析成對應不同平臺(作業系統)的機器指令,並載入進記憶體執行,這樣一來,Java便實現一次編譯(執行時無需再進行重新編譯),到處執行,即跨平臺執行.class檔案。
對java原始碼進行編譯編譯後多出了.class檔案(2)我們可以在IDEA工具中執行命令列視窗,來檢視.class位元組碼,透過命令javap -c來檢視位元組碼
javap -c 可以反編譯先進入src檔案這就是.class檔案的位元組碼,對應一些機器指令,但是這裡並不是真正計算機執行的機器指令為什麼JVM不直接將原始碼解析成機器碼去執行?-準備工作:無需每次執行時都進行各種檢查。-相容性:也可以將別的語言解析成位元組碼,如再由JVM解析執行。
回覆列表
學java哪有什麼太底層的東西?平時說的底層頂多就到虛擬機器。再底層那就是c++了。學java主要學的是設計模式,面向物件的思想,如果做工程(就是參加工作,做專案),主要學的是圍繞著java的生態。