別樣JAVA學習(一)基礎知識,java學習基礎知識

來源:互聯網
上載者:User

別樣JAVA學習(一)基礎知識,java學習基礎知識

之前Python進行機器學習發現當資料量越來越大時,單純的python處理已難以滿足,

需要用到hadoop對資料的平行處理,而hadoop用JAVA編寫,因此我開始了JAVA的學習。

以下是學習筆記

共有9章,章節大體思路是:為什麼--->是什麼--->如何做。


關於why?

目的簡而言之為了資料更有效平行處理。

關於what?

那麼歡迎來到JAVA的世界。

一、基礎常識

1、軟體開發

a:什麼是軟體?

            軟體:一系列按照特定順序組織的電腦資料和指令的集合。

            常見軟體:系統軟體:如DOS,windows,Linux等,

                              應用軟體:如掃雷,迅雷,QQ等。

b:什麼是開發?

            製作軟體

2、人機互動

a:軟體的出現實現了人與電腦之間的更好的互動。

b:互動方式:

             圖形化介面(Graphical User Interface GUI)

                                   這種方式簡單直觀,使用者易於接受,容易上手操作。 

             命令列方式(Command Line Interface CLI)

                                   需要有一個控制台,輸入特定的指令,讓電腦完成一些操作。

                                   較為麻煩,需要記錄住一些命令。

3、命令列方式

dos命令列,課程中常見的命令。

dir:列出目前的目錄下的檔案以及檔案夾

md:建立目錄

rd:刪除目錄

cd:進入指定目錄

cd..:退回到上一級目錄

cd \:退回到根目錄

del:刪除檔案

exit:推出dos命令列

4、電腦語言

a:通過DOS命令列的示範,發現原來操作電腦就如何電腦說話一樣。

b:我們告訴它做什麼,它就可以做什麼。前提是,我們和它說的內容它必須識別才可以。這就是電腦語言。


4.1、什麼是電腦語言?

a:語言:是人與人之間用於溝通的一種方式。

         例如:中國人與中國人用中文溝通。

         而中國人要和韓國人交流,就要學習韓語。

b:電腦語言:人與電腦交流的方式。

         如果人要與電腦交流,那麼就要學習電腦語。

         電腦語言有很多種,如:C,C++,JAVA等。

4.2、Java語言概述

a:是SUN(Stanford University Network,斯坦福大學網路公司)1995年推出的一門進階程式設計語言。

b:是一種面向Internet的程式設計語言。

c:隨著Java技術在web方面的不斷成熟,已經成為Web應用程式的首選開發語言。

d:是簡單易學,完全物件導向,安全可靠,與平台無關的程式設計語言。

e:三種技術架構

J2EE(Java 2 Platform Enterprise Edition)企業版

J2SE(Java 2 Platform Standard Edition)標準版

J2ME(Java 2 Platform Micro Edition)小型版

f:語言特點:跨平台性

原理是什嗎?

只要在需要運行java應用程式的作業系統上,

先安裝一個Java虛擬機器(JVM Java Virtual Machine)即可。

由JVM來負責Java程式在該系統中的運行。

4.3、Java語言的環境搭建

a:明確什麼是JRE(Java Runtime Enviroment)Java運行環境,JDK(Java Development Kit)Java開發套件

b:下載JDK

c:安裝JDK

d:配置環境變數

e:驗證是否成功

4.4、Java程式開發體驗--Hello World

將Java代碼編寫到副檔名為.java的檔案中。

通過javac命令對該.java檔案進行編譯。

通過java命令對產生的class檔案進行運行。

簡而言之:編寫-->編譯-->運行

4.5配置classpath

classpath尋找順序:先在path定義的路徑找,再到當前找;

path尋找順序:先在當前找,再到path找。


本章重點:

JDK,JRE,JVM的特點

環境變數的配置path和classpath以及作用。

Java程式的編寫,編譯,運行步驟。

在配置,編寫,編譯,運行各個步驟中常見的錯誤以及解決方案。


下一章我們將講解Java語言基礎組成


推薦一本java書可以系統的學習java,從基礎學習,(有java的基礎),但是想系統的學習java

問得好,
1 基礎紮實,很有協助。
2 要學到精通。要花很長一段時間投入的。
大概寫一下個人的感覺吧,這樣的問題,網上的答案很多的,
1 初學的話,從java的本身文法開始。很多人覺得這些東西很簡單,可能一天或者一個上午就完事了。但是,所有的東西,最關鍵的細節,god in details.你看完以後,去做一下scjp的試題目,看看自己的水平,深深反省一下。不是需要去考這個認證,是讓你真正意識到自己對於java的認識。這個階段可以看一些java培訓教程,好像有一個叫張孝詳的,比較適合沒有其他語言基礎的人,如果有基礎的,可以看看thinking in java
2 然後一些提高階段,對於java的文法熟悉以後,就是熟悉java語言,對語言最好的熟悉方法是熟悉他的類庫,這個部分,個人推薦最好的書是core java,現在到7還是8版了,我看是的時候是6版本。這本書是我所知道認可程式最高的一本java書了。
3 在對文法和語言都有一定程度的熟悉以後,就要知其然後知其所以然(前提是你想真正精通這個語言,不然這個時個就可以去搞jsp了),這個時候站的角度要高一些,先看看jvm,現在國內這個方法據我看的,沒有什麼特別好的書,因為也沒有幾本,瞭解了整個java是如何啟動並執行以後。想像一下,如果自己需要實現一個java的話,如何做,帶著這個問題去jdk的原始碼,你會收穫很大的。有一本書,叫effect java,本來應該是關於最基礎的東西,但是很難的,在這個階段看的話,收穫會很不一樣的。

4 在真正花時間在前三個階段以後,打一個真正紮實的java基礎以後,就可以開始真正面java最流行的領域了,從servlet,jsp開始,然後是J2EE那些東西。那些東西在本質上考慮的更多的設計理念和設計模式的東西了。有一個叫java與模式的書,好像叫閻什麼寫的,是設計模式很不錯的一本入門的書。在看書的時候,想法要開闊一些,不妨想一下,如果我自己要實現個tomcat,應該從哪裡開始,如果有這樣的想法,對於tomcat這些東西的理解,肯定要比大多數的人深刻一些。
5 在以上的東西都學到一定程度以後,那個時間就更應該關注的是方法論的東西了。包括軟體開發模式,程式設計的方法學,這個階段比較高了,我本人研究不深入,不能提供過多的東西,只能提供一些名詞,例如重構,敏捷開發等等。國外好像一個martin, Robert等什麼的在這方面比較有研究。

以上所有的過程就需要很多的動手實踐,沒有實踐,所有的程式設計語言的學習都只是水中花,鏡中月,練拳還要練功。如果你有良好的心態(這個最重要了),不要在別人開始學習J2ee等東西的時候,受不住誘惑,偏離了這個方向,要知道,玄門的功夫都是開始入門極難,然後越來越快的,九陰白骨爪之類的就剛好相反了。學習的過程,別的什麼都不重要,最重要的一點,是勤奮, 天道酬勤。
 
一天16小時學習Java,一個月可以把基礎知識學完

如果你每天花16H學習的話,我相信你一點會有好成績的。
本人建議,要勞逸結合,不要把知識學會了,身體卻胯下來了。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.