搜尋
首頁Javajava教程再談JAVA學習入門
再談JAVA學習入門Dec 17, 2016 am 11:02 AM

  學習java的過程中主要圍繞以下幾個面向來學習: 

1.時時提醒自己Java是一種OOP語言工具,而不僅僅是編碼,只有這樣才能整體把握和運用Java。 

2.在學習的過程中,最好能夠了解Java的底層機制,而不是只停留在表層,不是抄書上的例子運行出結果就可以。要注重,即便對一個簡單的例子也要有耐心去琢磨、調試、改動。 

3.在學習的過程中一定要動手做、寫程式碼,而不是抱一本書看看就好。很多東西和體會必須自己動手才能真正屬於自己,最好能參與一些實際的專案。 

4.在學到某個階段後,你開始希望用學過的東西做些什麼。這時的你應該開始學習一些更多、更複雜的知識,像是J2EE平台的建置、EJB的開發等。對於這一部分,我建議最好找一本較薄的書先了解一個大概,心裡有個總體的熟悉,對更多的技術術語做個初步把握。我認為這個階段看看《J2EE技術實踐》很不錯,它可以讓你了解J2EE包含的各種技術和框架,同時提供很多實際的例子來加深對J2EE的整體了解。 

學習Java的嗜好和決心扮演了非常要害的角色。在有了上述基礎後,我便開始一步一步學習Java。 

Java環境的搭建 

要執行Java程序,必須安裝JDK。 JDK是整個Java的核心,其中包含了Java編譯器、JVM、大量的Java工具以及Java基礎API。 

可以從http://Java.sun.com下載JDK,有1.4版本和1.31版本。在我的學習環境中首先,採用的是1.31版本。 

解壓安裝。然後,進行環境設定。

1.對於Windows平台要進行以下設定: 

set PATH=YOUR_INSTALL_ DIRbin; C:Windows;C:WindowsCommand 

set classpath=. ;YOUR_INSTALL_DIRlibtools.jarset classpath檔案: 

JAVA_HOME=your_install_dir/JDK/j2sdk 

CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/td.jar:$JAVAlib/jro.
PATH=$PATH:$JAVA_HOME/bin 

eXPort PATH PS1 USER LOGNAME MAIL HOSTNAME HISTSIZE HISTFILESIZE 

INPUTRC JAVA_HOME CLASSP遠。

下面介紹一下JDK的幾個重要的命令: 

◆Java執行工具,是啟動JVM(虛擬機)並執行class(BYTE CODE)檔案的命令; 

◆javac 編譯器,由.java檔案產生.class檔案; 

◆jar Java壓縮打包工具; 

◆Javadoc 文件產生器。 

最後就是JDK Documentation,這是JDK的線上幫助文檔,是最有用和最重要的學習參考文檔,應該多看。 

開始寫自己的程式碼 

現在環境有了,應該要寫個簡單的程式碼測試了。還是從經典的「hello Word」開始。 

1. 先用編輯器寫一程式碼(我用的是Linux的vi): 

[stone@coremsg work]$ vi Hello.Java 

public class Hello{ 

public static void main(
System.out.println("Hello Word!"); 





2. 編譯: 

[stone@coremsg work]$ Javac Hello.Java 

3. 執行: 

[stone@coremsg work]$ Java Hello 

Hello Word! 

成功了!這就是我的第一個Java程式。從那時起我知道我已開始走進Java的世界,接下來就靠自己的努力了。在這個過程中,筆者認為有幾點需要注重。 

學習新的語言,參考書是離不開的。我的建議是開始最好找一本篇幅較短的入門書來學習那些最簡單、最基本的東西,包括學習Java語法等。同時,對一個最簡單的程式也應該多去調試,多想想假如改動一下會出現什麼結果?為什麼必須那樣寫?多去想想這些問題然後去操作,會讓你有更多的收穫。這樣反覆地思考是很有用的。此外,這階段也應該多看JDK的線上幫助,盡量掌握JDK提供的Java基本類別庫API。 

在有一定基礎、能夠寫一些簡單的程式後,可以開始看《Thinking in Java》這本書。它比較完整地介紹了Java的語法、物件導向的特性、核心類別庫等。透過這層次的學習能夠加深對Java的理解和底層原理的運用,同時又可以完整地了解Java的整個體系。在這一階段,應該專注於學習Java的物件導向程式語言的特性,例如繼續、建構器、抽象類別、介面、方法的多態、重載、覆蓋、Java的異常處理機制等,要對上述概念有非常清楚的了解。這樣做的目的,是要讓自己把這些技術應用到實務上進行合理的程式設計(例如,你會考慮一個類別是用抽象還是介面來設計等)。這就要求必須在大量的實踐中去應用和學習。這也是當初很多朋友給我的建議。 

學習更多 

假如要用Java來完成各種更強大的任務,那麼就要學習語言以外的更多的東西。 

1.Java Web程式 

對於Java Web 程式設計來說,應該且必須熟悉並掌握HTTP協議,可以參考 Stevens的《TCP/ip 詳解》第三卷。 Java Servlet技術提供了產生動態Web頁面內容的能力,這在你的Java專案中是最基本的功能之一,所以必須學習。透過這階段的學習應該要掌握 Servlet/jsp的Web程式。 

2. J2EE的學習 

J2EE包含的技術太多了。假如你想坐在桌子旁邊抱著一大堆書來學習的話,效果不大的。我建議在開始這一階段的學習的時候,可以按以下步驟來做,總的思想是「總體把握,各個擊破」。 

◆ 了解J2EE中的技術術語的含義。 

我的感覺是J2EE標準中涉及到的各種技術很多,假如一開始就一個一個去學習的話是不現實的,也是沒效果的。我的建議是,先對其中的技術有個大概的了解,像是EJB、JavaIDL、JTA等。可能你不知道怎麼去寫一個EJB,但是要知道什麼是EJB、它能做什麼,當有了這樣的概念後,再去有目的地學習它就會快很多。我還要再重複一句——必須要在練習中動手去做才行。 

◆ 了解J2EE中的設計模式,這樣能幫助你對J2EE做個整體把握。 

MVC開發模式被證實是有效的處理方法之一。它可以分離資料存取和資料表現。你可以開發一個有伸縮性的、方便擴充的控制器,來維護整個流程。透過這一層次的學習,當你面對一個專案的時候,應該先掌握它的整體架構的設計,以及決定採用J2EE標準中的哪些技術。 

◆ 了解一些J2EE平台的典型案例,加深對這項技術的概念與理解。 

平常可以多留意這方面,熟悉一些典型案例,分析它為什麼要採用那個時間?那樣做能達到什麼樣的目的?然後聯絡到自己身邊的物品是否可以作為參考。 

◆ 學習J2EE下的各種技術。 

在有了前幾階段的學習後,可以自己建立一個J2EE平台開始具體學習每一種技術。你可以參與公司相關專案進行學習,也可以自己建立一個平台學習。這時候應該找點相關的書來一步一步學習,沒有捷徑。假如你不滿足於這些,那麼還應該更深入學習UML、設計模式等方面的東西。

 以上就是再談JAVA學習入門的內容,更多相關文章請關注PHP中文網(www.php.cn)! 


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
带你搞懂Java结构化数据处理开源库SPL带你搞懂Java结构化数据处理开源库SPLMay 24, 2022 pm 01:34 PM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对大家有帮助。

Java集合框架之PriorityQueue优先级队列Java集合框架之PriorityQueue优先级队列Jun 09, 2022 am 11:47 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于PriorityQueue优先级队列的相关知识,Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,下面一起来看一下,希望对大家有帮助。

完全掌握Java锁(图文解析)完全掌握Java锁(图文解析)Jun 14, 2022 am 11:47 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于java锁的相关问题,包括了独占锁、悲观锁、乐观锁、共享锁等等内容,下面一起来看一下,希望对大家有帮助。

一起聊聊Java多线程之线程安全问题一起聊聊Java多线程之线程安全问题Apr 21, 2022 pm 06:17 PM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于多线程的相关问题,包括了线程安装、线程加锁与线程不安全的原因、线程安全的标准类等等内容,希望对大家有帮助。

Java基础归纳之枚举Java基础归纳之枚举May 26, 2022 am 11:50 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于枚举的相关问题,包括了枚举的基本操作、集合类对枚举的支持等等内容,下面一起来看一下,希望对大家有帮助。

详细解析Java的this和super关键字详细解析Java的this和super关键字Apr 30, 2022 am 09:00 AM

本篇文章给大家带来了关于Java的相关知识,其中主要介绍了关于关键字中this和super的相关问题,以及他们的一些区别,下面一起来看一下,希望对大家有帮助。

Java数据结构之AVL树详解Java数据结构之AVL树详解Jun 01, 2022 am 11:39 AM

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于平衡二叉树(AVL树)的相关知识,AVL树本质上是带了平衡功能的二叉查找树,下面一起来看一下,希望对大家有帮助。

java中封装是什么java中封装是什么May 16, 2019 pm 06:08 PM

封装是一种信息隐藏技术,是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法;封装可以被认为是一个保护屏障,防止指定类的代码和数据被外部类定义的代码随机访问。封装可以通过关键字private,protected和public实现。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
2 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
2 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!