久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

我學習使用java的一點體會(定稿)

時間:2019-05-12 16:02:35下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《我學習使用java的一點體會(定稿)》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《我學習使用java的一點體會(定稿)》。

第一篇:我學習使用java的一點體會(定稿)

2002年初,因為公司的業務需要而學習java,并應用java開發項目。由于項目時間緊,沒有充裕的時間系統學習java,對java的學習只能是項目需要用什么,就學什么,這種學習方法的上手快,但不扎實,在以后的工作中,因為java學的不扎實,吃了不少苦頭?,F在我學習應用java已經有一年半的時間,對java已經有了一定的體會,把自己的體會寫出來,供網友分享。

以我個人的經驗,學習java應分以下幾個階段:

java的語法學習

面向對象觀念的建立

java基本類庫的學習

學習設計模式

應用設計模式

經過大量的實踐,可以設計模式

以上六個階段,其中前三個階段是針對java的,但java中,在很多設計模式的應用,同時有很多功能都支持設計模式,所以不懂設計模式的人是不會很好的應用java做開發的。第4、5個階段的學習在前三個階段的基礎上,學習、應用成功的經驗。從而進入第六個階段,在軟件設計這個領域盡情發揮。本人受能力所限,還處在第4個階段的學習過程,所以會對前四個階段說明。第五、六個階段只是我根據我自己的知識做的推斷,還沒有經驗無法說明。

在對這些學習階段進行闡述之前,我先說一下我的學習方法。在學習新的知識時我通常是按以下三個階段學的

理論學習。通過對理論的學習,盡量了解新知識的概念;學習之后只是粗略的了解概念,不能和實際很好的結合。

演繹階段。根據理論學習的知識,考慮在什么場合下可以應用這個新知識,哪些地方已經應用了這個概念,建立對新知識的感性認識。

歸納階段。從一個更深的層次理解理論。

以下根據java的六個學習階段闡述我的體會,而每個階段將按照理論學習、演繹和歸納三個小階段討論。

java語法的學習

語法學習的理論學習階段是最容易的階段,70%以上的java書主要介紹的就是java語法,隨意買來一本,通讀一下就可以,主要理解以下內容:(1)數據類型,(2)操作符,(3)控制流程,(4)類和類再生,(5)包和接口,(6)異常操作。

在理論學習階段,不必過于注重細節,只要對java的基本語法有一個整體認識,能讀懂示例的源代碼就可以了。

下一步就是演繹階段,應用所學的語法知識,編寫簡單的程序。最好憑自己的記憶,將各語法要點都用一遍(編寫代碼最好用notepad),對自己不熟悉的語法要重新閱讀,用編譯器去檢查語法錯誤。這個階段的目標是脫離書本以及java API能編寫簡單的程序,閱讀一個java源代碼能說出執行結果。

完成這個階段的學習,參加scjp的考試,應該獲得較高的成績。

在演繹階段的基礎上,根據自己犯過的錯誤,總結一下java的難點。重新閱讀語法書,將一些自己不是很清楚的概念重新整理一下,這時你對java語法的理解比第一次閱讀時更深了。

我在剛開始學java時,只是粗略的看看語法書,就開始編程序了,遇到不懂的就重新閱讀語法書,這樣,完全可以成為一個合格程序員,但是當我成為team leader時,為了培訓組員java編程,卻發現自己脫離了java語法書和Java API,竟然會的不多(java集成開發工具有提示功能),為了培訓,我又重新學了一遍java語法,很有收獲。

其實一個優秀的程序員,不但要能寫出好的程序,更重要的是,對所寫的程序能說的清楚:(1)說清楚程序的功能(2)說清楚程序的結構。而說清楚程序的結構的基礎是對java的語法要熟悉。想成為優秀的程序員,一定要在學習語法的基礎上,不斷實踐,不斷總結,最終能脫離語法書,將java語法系統的講解清楚。

面向對象觀念的建立

Java是面向對象的開發工具,使用java開發應用時,一定要懂面向對象編程的概念。在學過了java語法之后,應該建立OOP的概念。

理論學習階段,首先應當理解class和object,了解class、interface、abstract class,理解OOP的繼承性,封裝性(public, protected,private)和多態性。然后應當熟悉UML,可以閱讀一些UML的簡單資料,基本上了解類圖、狀態圖和時序圖就可以了。

演繹階段,對OOP的實踐。而OOP的成功范例應該是常見的23種設計模式。這個階段需要閱讀并體會設計模式UML圖和示例代碼,我推薦《java與模式》這本書,也可以訪問http://。不必讀懂模式,只需要讀懂每個模式的UML和代碼。

歸納階段,通過演繹階段的學習,體會OOP帶來的好處——對擴展開放,對修改關閉。同時學會如何在java中使用OOP的概念設計。

我在使用Java編程初期,一直使用面向過程的思想編程,對class、interface、abstract class以及public、protect、private的存在并沒有理解,直到我閱讀了Gof的設計模式,才理解OOP的優點。但是Gof的設計模式太晦澀了,我第一次讀時,僅僅是有了面向對象的概念,而對設計模式并沒有理解。相反《java與模式》容易讀一些,但《java與模式》一書的廢話多一些,有很多內容可以不讀。

java基本類庫的學習

曾經面試過一些java程序員,我出的題目是在使用java時,經常用到哪些類,在哪個包里。很少有人能答好,甚至有人做了2年java程序都沒有回答出,他們會用java,但必須依賴工具(指java集成開工具),我覺得他們可以編寫出程序,但不能編寫出特別好得程序。

我認為作為java程序員必須掌握java類庫的兩個包:java.lang和java.util這兩個包。java.lang包提供的是java編程要用到的基本類包,java程序員天天在用,無非是看別人如何用,自己就如何用,但很少有人去總結一下,比如String 和StringBuffer這兩個類有什么差別,應該有很多java程序員說不出來。另外Vector和HashMap這兩個類大家都在用,有多少人能說清楚Vector和HashMap繼承了哪些類,實現了哪些接口呢。

理論學習。認真閱讀java API的以下內容:java.lang包中的String,StringBuffer,Number,Double,Float,Byte,Short,Integer,Long,Character,Boolean,Process,Runtime,System,Object,Cloneable,Class,ClassLoader,Thread,ThreadGroup,Runnable,Package類或接口。java.util包中的Collection,list,Set,ArrayList,LinkedList,Hashset,TreeSet,Iterator,Map,SortedMap,HashMap,TreeMap,Comparator,Arrays,Enumeration,Vector,Stack,Dictionary,Hashtable,Properties,StringTokenizer,BitSet,Date,Calendar,Locale,Random,Observer,Observable類和接口。主要理清楚這些類或接口的繼承關系、主要功能。

演繹階段。通過閱讀代碼,練習編程,學習并應用這些類和接口。其實這些類的大部分是經常用的,無非對這些類和接口說不清楚。在這些類中,對java.lang和java.util包中的類,最好將各個方法練習使用一次。而對java.util包中Collections framework中的類,最好理清楚各個類和接口之間的關系。常用的類的方法我就不具體介紹了,我舉一個使用Observer和Obserable 的例子(摘自《The Complete Reference Java 2 》)。在Observer和Obserable中,java實現了對設計模式Observer的支持。

Watcher.java代碼

import java.util.*;

class Watcher implements Observer

{

public void update(Observable obj, Object arg)

{

System.out.println(“Update()called, count is ” +

((Integer)arg).intValue());

}

}

BeingWatched.java代碼

import java.util.*;

class BeingWatched extends Observable

{

void counter(int period)

{

for(;period >=0;period--)

{

setChanged();

notifyObservers(new Integer(period));

try

{

Thread.sleep(100);

} catch(InterruptedException e)

{

System.out.println(“Sleep interrupeted”);

}

}

}

};

ObserverDemo.java代碼

public class ObserverDemo

{

public static void main(String[] args)

{

BeingWatched observed = new BeingWatched();

Watcher observing = new Watcher();

observed.addObserver(observing);

observed.counter(10);

}

};

執行結果

Update()called, count is 10

Update()called, count is 9

Update()called, count is 8

Update()called, count is 7

Update()called, count is 6

Update()called, count is 5

Update()called, count is 4

Update()called, count is 3

Update()called, count is 2

Update()called, count is 1

Update()called, count is 0

歸納階段。總結使用經驗,體會這兩個包中類的繼承關系,對設計模式的支持(如Iterator本身就是設計模式,同時也是工廠方法模式的應用),了解這些類提供的所有功能,比較功能相近類的異同。將這些類的api記在心中。

雖然集成開發環境支持方法提示功能,但我個人認為,對于java.lang和java.util這兩個包的api應當熟記于心,java的其他類庫在使用時可以查找api。當然如果從事不同的開發,對其他類庫應當有相應的了解,如開發swing,就應當對javax.swing包了如執掌,開發b/s結構的程序,就要了解javax.servlet,依個人的應用來開發了。

本文的上一篇發表之后,承蒙各位網友關注,發表了很多評論,我感覺很多人對我寫得文章有誤解,大概是我表述不清楚的原因吧。這篇文章是對上一篇的補充,以一個示例闡述了解collection框架的重要性。

我在半年以前寫過一個函數printAll(Vector vector),具體代碼如下

import java.util.*;

public class UtilTool

{

public static void printAll(Vector vector)

{

System.out.println(“the Collection is vector”);

System.out.println(vector.getClass().toString());

Iterator iterator = vector.iterator();

while(iterator.hasNext())

{

System.out.println(iterator.next().toString());

}

}

public static void main(String[] arg)

{

Vector vector = new Vector();

vector.add(new Integer(1));

vector.add(new Integer(2));

vector.add(new Integer(3));

UtilTool.printAll(vector);

}

}

printAll這個函數設計的很不好——不夠通用,假如,還想打印HashSet類型的數據,你就必須重載printAll函數,代碼如下

public static void printAll(HashSet hashSet)

{

System.out.println(“the Collection is hashSet”);

System.out.println(hashSet.getClass().toString());

Iterator iterator = hashSet.iterator();

while(iterator.hasNext())

{

System.out.println(iterator.next().toString());}

}

printAll函數的代碼重用率低。其實Vector和 HashSet都是Collection的實現,可以將printAll的參數類型改為Collection,而不必重載。代碼如下

public static void printAll(Collection collection)

{

System.out.println(“the Collection is collection”);

System.out.println(collection.getClass().toString());

Iterator iterator = collection.iterator();

while(iterator.hasNext())

{

System.out.println(iterator.next().toString());

}

}

這樣就可以刪除printAll(Vector vector)和printAll(HashSet hashSet)函數了。

在設計函數時,應優先使用接口,而不是類。當然必須了解Vector 是Collection的實現。

如果對Collection的繼承關系不清楚,很容易濫用重載,以下代碼是一個有問題的代碼(摘自Effective Java Programming Language Guide)

public class CollectionClassifier{

public static String classify(Set s){

return “Set”;

}

public static String classify(List l){

return “List”;

}

public static String classify(Collection c){

return “Unknow Collection”;

}

public static void main(String[] args)

Collection[] tests = new Collection[]{

new HashSet(),new ArrayList(),new HashMap().values()

}

for(int i=0;i

System.out.println(classify(test[i]));

}

}

程序輸出的是三次“Unknown Collection”,而不是你期望的打印“Set”,“List”以及“Unknown Collection”。這個程序錯誤的根源是對Collection層次結構不熟悉,而濫用重載導致。

這篇文章仍然是對《我學習使用java的一點體會(3)》的補充。

我使用java開發一年多,使用的應該還算熟練,最近在閱讀《設計模式》和《Effective Java》時,又重新學了一下java的基本類庫,對編程思想有了新的認識。java的基本類庫是由專家設計的,理解基本類庫一方面可以增加自己的開發效率,另外一方面可以學學專家的設計思路。在java的基本類庫中,使用了很多的設計模式,在很多方面提供擴展機制,方便的支持設計模式??梢哉fjava的基礎類庫,將面向對象設計的Open-Close principle(Software entities should be open for extension,but closed for modification)發揮到了極致。

在java的基礎類庫中,有些類設計的是為了給java開發者提供工具,直接讓開發者使用的,有些類是專門為繼承而設計的。對于第一種類型的類,使用集成開發工具很容易就能上手使用,而對于第二種類型的類,不主動去學它的API,很難掌握它的使用。我舉一個例子。java 2 提供了對Proxy模式的支持,在以下示例中,演示了如何使用代理模式(摘自《java與模式》)。主要體會java.lang.reflect.InvocationHandler的用法

package com.javapatterns.proxy.reflect;

import java.lang.reflect.InvocationHandler;

import java.lang.reflect.Proxy;

import java.lang.reflect.Method;

import java.util.Vector;

import java.util.List;

public class VectorProxy implements InvocationHandler

{

private Object proxyobj;

/** @link dependency */

/*#Proxy lnkProxy;*/

public VectorProxy(Object obj)

{

proxyobj = obj;

}

public static Object factory(Object obj)

{

Class cls = obj.getClass();

return Proxy.newProxyInstance(cls.getClassLoader(),cls.getInterfaces(),new VectorProxy(obj));

}

public Object invoke(Object proxy, Method method, Object[] args)throws Throwable

{

System.out.println(“before calling ” + method);

if(args!= null)

{

for(int i=0;i

{

System.out.println(args[i] + “");

}

}

Object o = method.invoke(proxyobj, args);

System.out.println(”after calling “ + method);

return o;

}

public static void main(String[] args)

{

List v = null;

v =(List)factory(new Vector(10));

v.add(”New“);

v.add(”York");

}

第二篇:學習java的一些初步體會

Java開發記錄

剛開始學java,有很多不明白不是很多是幾乎全部,我把自己每學到一點都總結下來讓自己感覺更充實也希望以后能為初學者提供幫助。

Java培訓第一天

今天正式開始培訓,我們滿懷喜悅,感覺java一定是一門很高深的技術,幻想著可以寫出很多好玩的游戲,做出很多漂亮的網站,可是一開學就蒙了我根本什么都聽不懂,雖然假期看了一些java基礎,但是老師高濃縮的術語還是讓我一頭霧水,但還是有那份激情吧,我要學會,第一天就是在迷茫中度過的。老師一直在說現在不懂沒關系,以后用長了就好了。每天早上8:30到12:00,下午2:30到6:00晚上8:00到10:30每天接近10個小時的學習還是很充實的,我信心倍增。I believe myself。

Java培訓第二天

今天繼續講java基礎,老師的節奏很快,說不要把

(前幾天耽誤了,以后補上)

Java培訓第七天

這幾天已經基本上走出了前幾天的迷茫,感覺還是挺不錯的,由開始的什么都不會到現在的知道老師想讓我們干什么感覺進步還是滿大的,我身邊由一個考上北京郵電大學的姐給了我很大的幫助,還有很多學長也很厲害。大家一起學習,我們3個人是大一的也是最沒有基礎的,有學長的帶領和老師的指導進步很快。感覺知識是時間得來的,在學校里我可能4年都學不會這些東西,我說的是真的起碼對我是這樣。用了兩天的時間裝環境,把64位系統裝成32位的(老師的演示屏幕不支持64位,沒辦法,前兩天時間不緊)后來用了兩天的時間就把java基礎講完了,我是什么都不懂,雖然自學了一些但絕對是九牛一毛,專業術語 面向對象、類、封裝、繼承、多態、反射、跳轉、框架、異常捕獲、數據庫、接口等等反正我是什么都不會怕什么,我開始看書、百度、問學長(不敢問老師因為這樣的問題太白癡了)。基礎講完了,沒感覺有什么長進,但是感覺好像沒有原來那么難理解了,花了2個多小時把基礎書看了一遍感覺突然懂了的感覺(呵呵)老師把大量的時間花費在讓我們敲代碼的上,第一個項目testssh2完全是在老師的指導下一個單詞敲的,老師給我們講公司做項目的框架,我聽得暈了src層,docs層,sitting層,webroot層我根本聽不懂也不知道這能干什么用,一開始學C感覺C很難,覺得很多事情都是無厘頭,但是學了java才覺得java才是真正的霸道,我根本什么邏輯都不用考慮,想實現什么直接調用就OK了,感覺真正寫類的人才是大牛。!!今天第二遍將框架和第一遍基本上一樣不過項目比原先大了很多基本上是公司的使用框架出了test暫時不寫之外其他的都要寫,老師給我們建一個example我們自己寫一個exercise反正是高度一致,但難度還是挺大的寫了一天了還是沒有寫完,發布了在瀏覽器上出錯,各種錯誤各種調試,直到想吐。沒關系錯誤就是進步,下面我要開始上課了,就寫到這吧,加油myself。

第三篇:我的JAVA學習經歷

剛開始學JAVA時,是因為我們班有幾個人選修了這門課,而且還經常在討論一些JAVA的問題,我在一邊聽的似懂非懂的,就開始有了學JAVA的想法。那幾位同學是我們班學習相對較好的,而且邏輯思維能力理解能力也是我們當中數一數二的,和大家的關系也相當的好。在這樣的形勢下,我開始了我的JAVA之旅。剛開始學的那陣,和學C、C++的過程差不多,也是借了一些好像講得比較簡單的書,就是那些從變量、數據類型開始講的書,印象中好像有《21天學會JAVA2》、《循序漸進JAVA2教程》、《JAVA程序設計基礎》等等,書名大概是那樣,記不太清了。那時我還真以為只要我堅持、用心,21天之后我就能和那幾位同學一樣的水平了,呵呵!結果當然沒有我想像當中的那么好,這有我自己的原因,但其實也有JAVA本身的原因,JAVA語言那么博大精深,沒有人可能21天學會的,最多是對JAVA有個比較全面的了解,有那么一點JAVA的編程思想,JAVA的思維方式和面向對象的思維。然而我那幾本書沒有哪一本是看完過的,理由很簡單,以我當時的能力和經驗,是不可能看得完全懂的,于是我也在為停地換書,不停地借書。但我依然沒有面向對象的思維方式,我的水平也沒有提升上去,還是整天在寫一些流程控制的小程序。還記得那時我連JDK也不會配置,只能整天在紙上寫,寫滿了一頁頁的紙,似乎很有成就感,但其實也還是什么都不會。后來想起了學過的匯編語言,用的那些MASM、LINK程序也不用配置什么環境變量,不過要在CMD下面進入到程序所在的目錄下面去,這個方法是否也能用在JAVA上呢?于是我試著把程序放到JDK/BIN下面,發現竟然能編譯運行了,這不能不說是一個重大發現,我了終于能在電腦上運行JAVA程序了。后來看書看明白了PATH環境的配置,但還是看不懂CLASSPATH的配置,就把PATH配置上去了,這樣我的程序也基本上不用放在BIN下面了。有興趣的朋友不妨也用我的方法一試,呵呵。還有一點想說的是,初學者最好用JDK,簡單方便,還能讓你了解一些底層的實質性的東西,對你更深入的了解JAVA,以及JAVA如何編譯運行很有幫助。接下來就放假了,我們要在機房實習,用VB編寫WINDOWS應用程序,我的JAVA學習也就先放在一邊了。其實那時的我還是整天沉迷游戲當中,壓根就對編程沒興趣,只是為了和那幾位朋友能說上幾句,證明我也會那么一點而已,所以沒有花什么心思在上面,平時有事沒事看看而已。學VB的時候感覺還挺簡單的,教師上課讓我們看浙大的視頻,感覺視頻里講的挺好,回來了自己也弄的小東西,其中我其實就做過一個計算器程序,但為了讓程序盡量完美,我還是學了不少的,也花了不少心思在上面?,F在想來,學VB應該是我開始對編程產生興趣的時候,那時的成就感比較強,因為終于能做出一個有界面的功能還算不少的程序來了(相對于我以前用C、C++寫的控制臺程序)。之所以有這種感覺,我想大概和我C、C++沒學好有很大原因,即使是現在,我的C、C++也沒感覺,而且還幾乎忘得一干二凈了。實習的最后是分組做一個綜合程序,每5、6個人一組,大家都去找高手組隊,這是必然,呵呵,我也不例外!不過可惜,我們班就3、4個高手,我去晚了,級不上隊了,還有10多個人和我一樣,是沒法進高手的隊伍里去了。然后就有人叫我組個隊,因為我起碼還是中等水平的成績,我一想反正進不了高手隊伍了,算了,我就組個隊了,能不能做出作業來到時再說了。實在不行讓高手來幫下忙應該沒問題吧。結果,我們那隊人馬一個都不動,大家其實都不會,沒辦法啊,而且平時也都那樣習慣了。但總這樣也不是個事啊,誰讓我當時當了組長了呢?每天的計劃和成果我都是糊亂寫了就交上去了,然后再慢慢借書看書,把不會的補上去。那一周,我竟然一反常態,游戲也不打了,整天坐電腦前,查資料,看視頻,寫程序。壓力啊!然而連我自己都沒想到,我竟然做出一個通訊錄程序來了,雖然是七拼八湊、漏洞百出,但也是有模有樣,還是我到那時為止最大的一個程序,成就感那是相當地強啊,絕對是自信滿滿地,我看其他小組的組長似乎也和我一樣的感覺,呵呵,原來壓力還是很有好處的。實習結束之前,我向大家展示了我們的成果,應該說其實是我的成果了,呵呵,不過可不能讓我的那幾位組員聽到了,要不然……從那以后,我才真正對編程有了興趣,不過放假了,人也變懶了,一個暑假什么也沒學,全打游戲了,現在想來,真有點后悔啊。本來打算那個暑假學VC和JAVA的。開學之后,我步入了大三的生活,我開始選修了VC和JAVA,不過還是以JAVA為主,主要是發現VC太難,老師也就教我們怎么做菜單啊,對話框啊什么的,感覺對編程的原理方面根本不理解,對核心的東西也不知道,后來就一心學JAVA去了。這應該也是我現在C++不行的主要原因吧,不過仔細想想,要是沒當初,我現在可能也學不了JAVA的這些東西吧。呵呵,有得必有失,有失必有得啊。話說開學之后,我自己以為自己起碼也是看過點JAVA的人,所以老師的課也不怎么聽,只是自己去借點書來看看,沒有和老師同步,感覺自己高人一等一般,現在想想,當時真是傻子一個,只會狂妄自大,其實根本什么都不會。我當時上的是劉新老師的課,感覺收獲是挺大的,主要是他給我們留的那8道作業,通過完成作業,我才知道我很菜,也學會了不少東西,包括一些API的使用。在做那8

道作業的過程中,我不停地到讀書館找資料,光那段時間,我就一共借過不下20本JAVA書。我一般晚上七、八點開始寫程序,一直到停電,經常碰到不會的,就又翻資料,想算法,問題要是解決不了,晚上睡覺了也還在想,哪里不對,哪里還需要改進,那段時間我就是這樣過去的,現在感覺是我收獲最大的時間段之一。事情實在很奇妙,當你苦苦思索的時候就是想不出方案來,等熄燈了在床上想的時候,就想到解決的方案了,那時候真是興奮莫名啊,真想馬上起來,把我的想法付諸實施,但是卻停電了,呵呵,只能等到第二天了?,F在教JAVA的老師好像已經不止劉新老師了,留的作業怎么樣我就不知道了,不過考試的形式聽說相當不好,竟考那些概念性的東西,語法性的東西,甚至于有考JAVA的歷史的,比如JAVA是什么小組什么時候出于哪種原因而開發出來的等等。我認為這很不好,學JAVA或者更大一點說學編程絕不是學這些東西,雖然說概念語法是必須要會的,但不是主要的,主要的應該是學會那種思維方式,學會用程序去解決問題的能力,能做出一些實際的東西來!我個人認為,用到什么東西,如果不會再去學,這樣才有目標、有動力,也才會有成果。你是要學一些概念和語法,但不必去深究,不必去死記硬背,那樣就進牛角尖了,中國的教育卻常常樂此不疲,你看最大的例子就是關于英語的學習,都成什么樣子了,學了這么多年的英語,什么也不會。學程序設計最好的方法是多寫些程序,開始可以是一些小程序,之后能力上去了,就可以做些項目了,這是提高能力的最好途徑。你會發現,寫的東西多了,那些語法什么的,你自然就會了,很多平時你想破腦袋都想不通的問題,現在已經能深刻地理解和運用了,這時候的喜悅是語言難以形容的。當然,看一些高手寫的程序也是很有幫助的,你可以了解別人的算法,別人程序的組織形式、還有他對問題的解決方式,有時候你會發現那些相當巧妙的東西,收獲絕對不小。8周的選修課上完之后,我的興趣就更加濃厚了,開始去學多線程和網絡編程,不過直到現在我對這兩方面還是不太擅長,主要還是當時沒看多久,也沒怎么看懂。在做完那幾道作業之后,我又一次地高估了自己,以為自己是高手了,看來只有無知的人才會盲目,高手也歷來不是自封的。后來我又去學JSP,開始學HTML,花了我半個月時間去了解JSP的基本知識,然后找SUN公司的JSWDK,竟然沒找到,我當時還不知道現在已經不用這東西了,都在用TOMCAT,主要是圖書館這方面的書太老了,講的也全是如何用JDK+JSWDK+ACCESS來作一些動態網頁開發,所以進度相當慢。后來終于下了TOMCAT安裝上去,又不會配置,這東西相當麻煩,要是有人指點的話很快就能配置好,但我當時真是查了好多資料,上網找了好多東西,但是都沒有講得明白的,而且各有各的說法,版本也完全不一樣。就這樣摸爬滾打,花了不少時間,我終于配置好了TOMCAT服務器,不容易啊。不過因為都是自己弄的,卻也了解到了不少東西,也可以說沒白費力氣。也因此想到一些東西,當自己有不會的東西時,自己要先想想,查查資料,上網找答案,實在不會了再問問高手,或者過來人,這是相當有幫助的,你會明白很多底層的原理性的東西,不要一有不會的就問別人。學了一點JSP以后,我又學HTML去了,后來又去搞網頁設計,寒假還學了ASP,然后又用ASP做了幾個小網頁,真是學的亂七八糟的,也學的一塌糊涂,所以一直到現在,我還在一邊學JSP,一邊補J2SE的基本知識,整天在這轉,沒有任何進步了。最不爽的是我是參加了一個科技創新,現在要花很多的時間在那上面,還要看地質方面的東西,了解什么測井的知識,真頭疼。真想不干算了,一心學我的JAVA,不過現在還是拖拖拉拉的,一來不想讓導師失望,二來不想讓我們組長說我太沒信義,唉,難辦??!現在的學習已經不像當初那么容易了,要做點東西要想很多,也要花很多時間去弄,而且往往不是只會JAVA就能行的了,還要會HTML、XML、JAVASCRIPT、CSS,還得學會用很多工具,感覺路途很遙遠啊,自己好渺小。

第四篇:我的java學習總結

我的logic java學習總結

在將近三個月的java學習中,我接觸到了編程的樂趣.我熱愛java,熱愛編程.我將不懈的努力遨游在編程的浩海之中.我將我在java學習中經常出錯的地方作個總結列出如下:

1.一個class中只能有一個main方法.2.靜態的方法不能調用非靜態的方法.若要調用,需要把非靜態的方法加上static.3.類名的首字母要大寫.字段,變量名,方法名,首單詞要小寫,其后單詞的首字母要大寫.包名全小寫.并且所有的單詞要緊靠在一起.4.聲明一個String類型的變量時,其值要用雙引號;聲明一個char類型的變量時,其值要用單引號.5.“=”是賦值運算符,”==”是關系運算符.所以在if條件結構中,括號內的條件要是boolean類型的.6.Switch結構中,case 后緊接的是”:”.并且每個case后要加上一個break.7.類是對象的模板,對象是類的實體.8.將對象實例化要使用new關鍵字.9.盡可能的加上注釋,并用javadoc生成自己的程序文檔.10.“.”操作符后是方法.用法是:對象名.方法名.11.toString()是一個很重要的方法.它返回的是一個字符串.12..length在數組中是屬性,在字符串中是方法.13.數組中,聲明,分配并賦值的寫法有兩種:

1變量類型[] 變量名=new變量類型[此處為空] {X, X, X ,X,……};○

2變量類型[] 變量名=new○

14.提取字符串中的某一部分subString(beginindex,endindex), Beginindex的位置從0開始, endindex的位置從1開始.15.StringBuffer的功能要比String的強大.16.append()是StringBuffer的方法,不是String的方法.

第五篇:java學習

.如何學習Java?

3.1 Java學習路線

3.1.1 基礎語法及Java原理基礎語法和Java原理是地基,地基不牢靠,猶如沙地上建摩天大廈,是相當危險的。學習Java也是如此,必須要有扎實的基礎,你才能在J2EE、J2ME領域游刃有余。參加SCJP(SUN公司認證的Java程序員)考試不失為一個好方法,原因之一是為了對得起你交的1200大洋考試費,你會更努力學習,原因之二是SCJP考試能夠讓你把基礎打得很牢靠,它要求你跟JDK一樣熟悉Java基礎知識;但是你千萬不要認為考過了SCJP就有多了不起,就能夠獲得軟件公司的青睞,就能夠獲取高薪,這樣的想法也是很危險的。獲得“真正”的SCJP只能證明你的基礎還過得去,但離實際開發還有很長的一段路要走。

3.1.2 OO思想的領悟掌握了基礎語法和Java程序運行原理后,我們就可以用Java語言實現面向對象的思想了。面向對象,是一種方法學;是獨立于語言之外的編程思想;是 CBD基于組件開發的基礎;屬于強勢技術之一。當以后因工作需要轉到別的面向對象語言的時候,你會感到特別的熟悉親切,學起來像喝涼水這么簡單。

使用面向對象的思想進行開發的基本過程是: ●調查收集需求?!窠⒂美P?。

●從用例模型中識別分析類及類與類之間的靜態動態關系,從而建立分析模型。●細化分析模型到設計模型。●用具體的技術去實現?!駵y試、部署、總結。

3.1.3 基本API的學習進行軟件開發的時候,并不是什么功能都需要我們去實現,也就是經典名言所說的“不需要重新發明輪子”。我們可以利用現成的類、組件、框架來搭建我們的應用,如SUN公司編寫好了眾多類實現一些底層功能,以及我們下載過來的JAR文件中包含的類,我們可以調用類中的方法來完成某些功能或繼承它。那么這些類中究竟提供了哪些方法給我們使用?方法的參數個數及類型是?類的構造器需不需要參數?總不可能SUN公司的工程師打國際長途甚至飄洋過海來告訴你他編寫的類該如何使用吧。他們只能提供文檔給我們查看,Java DOC文檔(參考文獻4.4)就是這樣的文檔,它可以說是程序員與程序員交流的文檔?;続PI指的是實現了一些底層功能的類,通用性較強的API,如字符串處理/輸入輸出等等。我們又把它成為類庫。熟悉API的方法一是多查Java DOC文檔(參考文獻4.4),二是使用JBuilder/Eclipse等IDE的代碼提示功能。

3.1.4 特定API的學習Java介入的領域很廣泛,不同的領域有不同的API,沒有人熟悉所有的API,對一般人而言只是熟悉工作中要用到的API。如果你做界面開發,那么你需要學習Swing/AWT/SWT等API;如果你進行網絡游戲開發,你需要深入了解網絡API/多媒體API/2D3D等;如果你做WEB開發,就需要熟 悉Servlet等API啦??傊?,需要根據工作的需要或你的興趣發展方向去選擇學習特定的API。

3.1.5 開發工具的用法在學習基礎語法與基本的面向對象概念時,從鍛煉語言熟練程度的角度考慮,我們推薦使用的工具是Editplus/JCreator+JDK,這時候不要急于上手JBuilder/Eclipse等集成開發環境,以免過于關注IDE的強大功能而分散對Java技術本身的注意力。過了這一階段你就可以開始熟悉 IDE了。程序員日常工作包括很多活動,編輯、編譯及構建、調試、單元測試、版本控制、維持模型與代碼同步、文檔的更新等等,幾乎每一項活動都有專門的工具,如果獨立使用這些工具的話,你將會很痛苦,你需要在堆滿工具的任務欄上不斷的切換,效率很低下,也很容易出錯。在JBuilder、Eclipse等IDE中已經自動集成編輯器、編譯器、調試器、單元測試工具JUnit、自動構建工具ANT、版本控制工具CVS、DOC文檔生成與更新等等,甚至可以把UML建模工具也集成進去,又提供了豐富的向導幫助生成框架代碼,讓我們的開發變得更輕松。應該說IDE發展的趨勢就是集成軟件開發中要用到的幾乎所有工具。從開發效率的角度考慮,使用IDE是必經之路,也是從一個學生到一個職業程序員轉變的里程碑。Java開發使用的IDE主要有Eclipse、JBuilder、JDeveloper、NetBeans等幾種;而Eclipse、JBuilder 占有的市場份額是最大的。JBuilder在近幾年來一直是Java集成開發環境中的霸主,它是由備受程序員尊敬的Borland公司開發,在硝煙彌漫的 Java IDE大戰中,以其快速的版本更新擊敗IBM的Visual Age for Java等而成就一番偉業。IBM在Visual Age for Java上已經無利可圖之下,干脆將之貢獻給開源社區,成為Eclipse的前身,真所謂“柳暗花明又一村”。浴火重生的Eclipse以其開放式的插件擴展機制、免費開源獲得廣大程序員(包括幾乎所有的骨灰級程序員)的青睞,極具發展潛力。

3.1.6 學習軟件工程 對小型項目而言,你可能認為軟件工程沒太大的必要。隨著項目的復雜性越來越高,軟件工程的必要性才會體現出來。參見“軟件開發學習路線”小節。

3.2學習要點 確立的學習路線之后,我們還需要總結一下Java的學習要點,這些要點在前文多多少少提到過,只是筆者覺得這些地方特別要注意才對它們進行匯總,不要嫌我婆婆媽媽啊。

3.2.1勤查API文檔當程序員編寫好某些類,覺得很有成就感,想把它貢獻給各位苦難的同行。這時候你要使用“Javadoc”工具(包含在JDK中)生成標準的Java DOC文檔,供同行使用。J2SE/J2EE/J2ME的DOC文檔是程序員與程序員交流的工具,幾乎人手一份,除了菜鳥之外。J2SE DOC文檔官方下載地址:http://Java.sun.com/j2se/1.5.0/download.jsp,你可以到google搜索CHM版本下載。也可以在線查看:http://Java.sun.com/j2se/1.5.0/docs/api/index.html。對待DOC文檔要像毛主席語錄,早上起床念一遍,吃飯睡覺前念一遍。當需要某項功能的時候,你應該先查相應的DOC文檔看看有沒有現成的實現,有的話就不必勞神費心了直接用就可以了,找不到的時候才考慮自己實現。使用步驟一般如下: ●找特定的包,包一般根據功能組織?!裾倚枰褂妙?,類命名規范的話我們由類的名字可猜出一二?!襁x擇構造器,大多數使用類的方式是創建對象?!襁x擇你需要的方法。

3.2.2 查書/google->寫代碼測試->查看源代碼->請教別人 當我們遇到問題的時候該如何解決?這時候不要急著問別人,太簡單的問題,沒經過思考的問題,別人會因此而瞧不起你。可以先找找書,到google中搜一下看看,絕大部分問題基本就解決了。而像“某些類/方法如何使用的問題”,DOC文檔就是答案。對某些知識點有疑惑是,寫代碼測試一下,會給你留下深刻的印象。而有的問題,你可能需要直接看 API的源代碼驗證你的想法。萬不得已才去請教別人。

3.2.3學習開源軟件的設計思想 Java領域有許多源代碼開放的工具、組件、框架,JUnit、ANT、Tomcat、Struts、Spring、Jive論壇、PetStore寵物店等等多如牛毛。這些可是前輩給我們留下的瑰寶呀。入寶山而空手歸,你心甘嗎?對這些工具、框架進行分析,領會其中的設計思想,有朝一日說不定你也能寫一個XXX框架什么的,風光一把。分析開源軟件其實是你提高技術、提高實戰能力的便捷方法。

3.2.4 規范的重要性 沒有規矩,不成方圓。這里的規范有兩層含義。第一層含義是技術規范,多到http://www.tmdps.cn下載JSRXXX規范,多讀規范,這是最權威準確最新的教材。第二層含義是編程規范,如果你使用了大量的獨特算法,富有個性的變量及方法的命名方式;同時,沒給程序作注釋,以顯示你的編程功底是多么的深厚。這樣的代碼別人看起來像天書,要理解談何容易,更不用說維護了,必然會被無情地掃入垃圾堆。Java編碼規范到此查看或下載http://Java.sun.com/docs/codeconv/,中文的也有,啊,還要問我在哪,請參考3.2.2節。

3.2.5 不局限于Java 很不幸,很幸運,要學習的東西還有很多。不幸的是因為要學的東西太多且多變,沒時間陪老婆家人或女朋友,導致身心疲憊,嚴重者甚至導致抑郁癥。幸運的是別人要搶你飯碗絕非易事,他們或她們需要付出很多才能達成心愿。Java不要孤立地去學習,需要綜合學習數據結構、OOP、軟件工程、UML、網絡編程、數據庫技術等知識,用橫向縱向的比較聯想的方式去學習會更有效。如學習Java集合的時候找數據結構的書看看;學JDBC的時候復習數據庫技術;采取的依然是“需要的時候再學”的原則。

4.結束語需要強調的是,學習軟件開發確實有一定的難度,也很辛苦,需要付出很多努力,但千萬不要半途而廢。本文如果能對一直徘徊在Java神殿之外的朋友有所幫助的話,筆者也欣慰了。哈哈,怎么聽起來老氣橫秋呀?沒辦法,在電腦的長期輻射之下,都快變成小老頭了。最后奉勸各位程序員尤其是MM程序員,完成工作后趕快遠離電腦,據《胡播亂報》報道,電腦輻射會在白皙的皮膚上面點綴一些小黑點,看起來鮮艷無比……

下載我學習使用java的一點體會(定稿)word格式文檔
下載我學習使用java的一點體會(定稿).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    JAVA學習

    1 買本《java瘋狂講義》 或者 在網上下載下來看看2 主要看java語法部分和面向對象編程部分3 這些要速度過 接下來開始寫一些小例子 從例子里面學習會更快4 例子差不多了就開......

    如何深入學習java

    在開發領域的技術人員,只有不斷地充電提高才能夠讓自己始終處于不敗之地。技術日新月異,推陳出新,讓技術人員目不暇接。我們都知道,java技術是目前最流行的編程語言,java入門很難......

    Java集合框架使用總結

    前言: 本文是對Java集合框架做了一個概括性的解說,目的是對Java集合框架體系有個總體認識,如果你想學習具體的接口和類的使用方法,請參看Java API文檔。 一、概述 數據結構對程......

    Java學習路線

    怎么學習Java,這是很多新手經常會問我的問題,現在我簡單描述下一個Java初學者到就業要學到的一些東西: 首先要明白Java體系設計到得三個方面:J2SE,J2EE,J2ME(KJAVA)。J2SE,Java 2 P......

    java 學習線路

    怎么學習Java,這是很多新手經常會問我的問題,現在我簡單描述下一個Java初學者到就業要學到的一些東西: 首先要明白Java體系設計到得三個方面:J2SE,J2EE,J2ME(KJAVA)。J2SE,Java 2 P......

    學習必經之路JAVA

    很多網友問我學習Java有沒有什么捷徑,我說“無他,唯手熟爾”。但是我卻很愿意將自己學習的一些經驗寫出來,以便后來者少走彎路,幫助別人是最大的快樂嘛! 要想學好Java,首先要知......

    java學習方向

    如何學習java(一) 最近論壇上看到好幾個朋友都在問,如何學習Java的問題,“我已經學習了J2SE,怎么樣才能轉向J2EE?”,“我看完了Thinking in Java, 可以學習J2EE了么?”。于是就......

    java學習步驟

    java 學習步驟-_- J2EE又包括許多組件,如JSP,Servlet,JavaBean,EJB,JDBC,JavaMail等。要學習起來可不是一兩天的事。那么又該如何學習J2EE呢?當然Java語法得先看一看的,I/O包......

主站蜘蛛池模板: 好吊色欧美一区二区三区四区| 一区二区传媒有限公司| 美国人性欧美xxxx| 9久9久热精品视频在线观看| 欧美熟妇色ⅹxxx欧美妇| 日韩精品一区二区三区影院| 精品少妇一区二区三区免费观| 欧美韩中文精品有码视频在线| 久久久精品中文字幕乱码18| 亚洲精品久久久久久久久久久捆绑| 妺妺窝人体色www在线下载| 蜜桃视频无码区在线观看| 国产aⅴ精品一区二区三区久久| 亚洲色大18成人网站www在线播放| 成人午夜爽爽爽免费视频| 丁香五月缴情综合网| 亚洲一卡2卡三卡4卡无卡下载| 无码人妻精品丰满熟妇区| 亚洲国产第一站精品蜜芽| 亚洲大尺度专区无码浪潮av| 亚洲丁香婷婷久久一区二区| 国产sm调教视频在线观看| 亚洲精品乱码久久久久久蜜桃| 国产成人亚洲日韩欧美| 日韩人妻精品一区二区三区视频| 高中国产开嫩苞实拍视频在线观看| 久久精品国产亚洲精品2020| 最近最好的中文字幕2019免费| 1000部拍拍拍18勿入免费视频下载| 国产极品美女高潮抽搐免费网站| 亚洲午夜久久久久久噜噜噜| 欧美伊香蕉久久综合网另类| 狠狠摸狠狠澡| 精品毛片| 狠狠色综合网站久久久久久久| 少妇高潮一区二区三区99| 精品人体无码一区二区三区| 欧美人妻日韩精品| 亚洲人成网站色www| 国产微拍无码精品一区| 2019亚洲午夜无码天堂|