<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    蘋果的成長(zhǎng)日記

    我還是個(gè)青蘋果呀!

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      57 隨筆 :: 0 文章 :: 74 評(píng)論 :: 0 Trackbacks
    注:可能和前面的題有重復(fù)
     
     

    1,初始化
    類變量自動(dòng)初始化為0或者null,局部變量使用前一定要初始化

    2,主類型過(guò)載
    類型匹配順序:按照byte->short->char->int->long->float->double 順序匹配。
    一種主類型只能匹配參數(shù)范圍不小于其本身和其本身范圍最接近的函數(shù)
    即有int i;1.f(short s);2.f(long l);i只能適用于第2個(gè)f函數(shù)
    如果是常數(shù),則編譯器作為int處理
     
    3,主類型計(jì)算結(jié)果的類型 和最大范圍計(jì)算子的類型一致,但是最小也要是int,即byte+byte結(jié)果為int型。

    4,short型和char型不能互相賦值(因?yàn)閟hort有符號(hào),char無(wú)符號(hào))

    5,package一定要放在java文件第一行(除注釋空行外)

    6,import只能放在第一行或者package下面

    7,多個(gè)import的package里面如果有同名class,使用時(shí)必須指定package

    8,interface中只能有方法宣言和定數(shù)

    9,class實(shí)現(xiàn)interface必須實(shí)現(xiàn)全部方法

    10,同一java文件中class和interface只能有一個(gè)public

    11,為了宣言定數(shù),在變量前加final修飾子,變量不可改變,但是object的屬性可以改變(有點(diǎn)忘記了,請(qǐng)確認(rèn),:))

    12,配列不能在宣言的時(shí)候用char arr[12];形式指定,必須要用new指定大小。指定完畢后自動(dòng)初期化;也可以new的時(shí)候用{0,0,0}形式指定

    13,如果一個(gè)object為null,使用其屬性或者方法,產(chǎn)生NullPointerException

    14,如果使用一個(gè)越界index訪問(wèn)配列,產(chǎn)生ArrayOfBoundsException

    15,配列長(zhǎng)用配列名.length

    16,constructor如果有返回值,編譯器作為一般方法看待

    17,constructor里面如果要用super(..)和this(..),必須放在第一行,而且只能用一次

    18,如果沒(méi)有顯式調(diào)用super和this,編譯器自動(dòng)在第一行插入super();要求超類必須存在無(wú)參數(shù)的constructor

    19,如果沒(méi)有顯式聲明constructor,編譯器自動(dòng)生成默認(rèn)無(wú)參數(shù)constructor。一旦聲明,則無(wú)默認(rèn)constructor

    20,修飾子(訪問(wèn)范圍大小順序)
    public 完全公開
    protected 同一package或者子類中無(wú)同一package
    private 本class

    21,override的方法不能使訪問(wèn)范圍縮小即父類中public方法不能被protected override
     
    22,static方法不能被override?確認(rèn)
    23,constructor不能被繼承

    24,抽象class不能同時(shí)被static修飾子修飾
     
    25,native:方法被java以外其它語(yǔ)言實(shí)現(xiàn)

    26,interface里面:
    方法默認(rèn)為public abstract修飾
    變量默認(rèn)為public static final修飾

    27,abstract和final,abstract和static,abstract和private不能同時(shí)指定

    28,&&,||為短路條件運(yùn)算符
    &,|為不短路條件運(yùn)算符

    29,switch()只能判斷byte,short,int,char(long,float,double不行)
     
    30,Exception包括可check Exception和Runtime Exception可check Exception可以被編譯器檢查,Runtime Exception不被編譯器檢查,但是可以被catch捕捉

    31,try{}catch{}catch{}多個(gè)catch語(yǔ)句按照聲明順序檢查,一旦被捕捉,以后catch就直接跳過(guò),超類Exception可以捕捉子類Exception

    32,try中即使有return,finally段也會(huì)被執(zhí)行

    33,method聲明用throws,拋出Exception用throw

    34,強(qiáng)制垃圾回收,system.gc();促使垃圾回收,但不是馬上回收

    35,finalize();在垃圾回收的時(shí)候自動(dòng)調(diào)用;建議顯式調(diào)用super.finalize();
     
    36,main方法的args[0]是第一個(gè)參數(shù),例如:java Test a b c,args[0]是"a"
     
    37,類中static段中不能throw異常,constructor里面不能throw異常

    38,對(duì)于除零:整數(shù)運(yùn)算拋出ArithmeticException實(shí)數(shù)運(yùn)算不拋出異常;返回Infinity或者-Infinity

    39,instanceof運(yùn)算子,is的意思,例如:betty instanceof girl,返回true,:)
     
    40,override和overload的區(qū)別
    很簡(jiǎn)單,不多寫了

    41,inner class(內(nèi)部類:重點(diǎn)注意)
    nest class:class內(nèi)部定義的class包括
    (member class:作為class的member定義的class
    local class:作為method局部變量定義的class
    anonymous class:用new生成的沒(méi)有名字的class)

    42,inner class:除了static member class以外的所有nest class總稱
    inner class中不能定義static段
    inner class里面不能定義沒(méi)有final修飾子修飾的static變量
    inner class不能定義interface?(記不清了,自己確認(rèn)一下)

    43,member class的使用方法:TopClass.memberClass

    44,static宣言的member class的生成方法:
    TopClass的instance.new memberClass()或者new TopClass.memberClass();

    45,local class不能顯式被修飾子修飾

    46,local class只能存取被final修飾子修飾的上級(jí)變量(注意)

    47,anonymous class instance生成方法:
    new SuperClass名(){.......}或者
    new Interface名(){......}

    48,anonymous class
    不能定義sub class(因?yàn)樽约簺](méi)有名字)
    不能定義為abstract class
    不能定義constructor(注意)

    49,Thread生成方法
    繼承java.lang.Thread
    實(shí)現(xiàn)java.lang.Runnable interface,然后用new Thread(實(shí)現(xiàn)Runnable接口的class)來(lái)生成Thread instance

    50,Thread的join方法,等待Thread結(jié)束

    51,Object的wait()方法和notify(),notifyAll()方法(線程同期化,自己好好看看)

    52,同期化保留字:synchronized(有可能要求拼寫)

    53,如果用synchronized修飾static方法,static寫在前頭

    54,String和StringBuffer區(qū)別:String初始化后不可改變,StringBuffer可以改變
    String s1="hello";
    String s2="hello";
    if (s1==s2){System.out.println("OK");}
    執(zhí)行結(jié)果是打印出OK

    55, >>>運(yùn)算符高位填0,是為邏輯移位


    局部類和嵌套類

    局部類

      在一個(gè)函數(shù)體內(nèi)定義的類稱為局部類。局部類中只能使用它的外圍作用域中的對(duì)象和函數(shù)進(jìn)行聯(lián)系,因?yàn)橥鈬饔糜蛑械淖兞颗c該局部類的對(duì)象無(wú)關(guān)。在定義局部類時(shí)需要注意:局部類中不能說(shuō)明靜態(tài)成員函數(shù),并且所有成員函數(shù)都必須定義在類體內(nèi)。在實(shí)踐中,局部類是很少使用的。下面是一個(gè)局部類的例子。

    int a;
    void fun()
    {
      static int s;
      class A
       {
        public:
         void init(int i) { s = i; }
        };
      A m;
      m.init(10);
    }


      嵌套類

      在一個(gè)類中定義的類稱為嵌套類,定義嵌套類的類稱為外圍類。

      定義嵌套類的目的在于隱藏類名,減少全局的標(biāo)識(shí)符,從而限制用戶能否使用該類建立對(duì)象。這樣可以提高類的抽象能力,并且強(qiáng)調(diào)了兩個(gè)類(外圍類和嵌套類)之間的主從關(guān)系。下面是一個(gè)嵌套類的例子:

    class A
    {
     public:
     class B
      { 
       public:
        …
       private:
        …
      };
     void f();
     private:
     int a;
    }


      其中,類B是一個(gè)嵌套類,類A是外圍類,類B定義在類A的類體內(nèi)。

      對(duì)嵌套類的若干說(shuō)明:

      1、從作用域的角度看,嵌套類被隱藏在外圍類之中,該類名只能在外圍類中使用。如果在外圍類的作用域內(nèi)使用該類名時(shí),需要加名字限定。

      2、從訪問(wèn)權(quán)限的角度來(lái)看,嵌套類名與它的外圍類的對(duì)象成員名具有相同的訪問(wèn)權(quán)限規(guī)則。不能訪問(wèn)嵌套類的對(duì)象中的私有成員函數(shù),也不能對(duì)外圍類的私有部分中的嵌套類建立對(duì)象。

      3、嵌套類中的成員函數(shù)可以在它的類體外定義。

      4、嵌套類中說(shuō)明的成員不是外圍類中對(duì)象的成員,反之亦然。嵌套類的成員函數(shù)對(duì)外圍類的成員沒(méi)有訪問(wèn)權(quán),反之亦然。國(guó)此,在分析嵌套類與外圍類的成員訪問(wèn)關(guān)系時(shí),往往把嵌套類看作非嵌套類來(lái)處理。這樣,上述的嵌套類可寫成如下格式:

    class A
    {
     public:
     void f();
     private:
     int a;
     };

    class B
    {
     public:
      …
     private:
      …
    };


      由引可見,嵌套類僅僅是語(yǔ)法上的嵌入。

      5、在嵌套類中說(shuō)明的友元對(duì)外圍類的成員沒(méi)有訪問(wèn)權(quán)。

      6、如果嵌套類比較復(fù)雜,可以只在外圍類中對(duì)嵌套類進(jìn)行說(shuō)明,關(guān)于嵌套的詳細(xì)的內(nèi)容可在外圍類體外的文件域中進(jìn)行定義。

     

      
    個(gè)人在國(guó)內(nèi)做IT已經(jīng)有五年了,我從事JAVA也有三年了,有一些個(gè)人在面試后的對(duì)面試問(wèn)題總結(jié),在些寫出來(lái):
    1.J2EE是什么?

    2.介紹JAVA中的Collection FrameWork(包括如何寫自己的數(shù)據(jù)結(jié)構(gòu))?

    如COLLECTION中遺留類(HASHTABLE、VECTOR)和現(xiàn)有類的區(qū)別?(同步)

    3.Java中異常處理機(jī)制,事件機(jī)制?

     

    4.EJB與JAVA BEAN的區(qū)別?

    EJB與JAVA BEAN是SUN的不同組件規(guī)范,EJB是在容器中運(yùn)行的,分步式的,而JAVA BEAN主要是一種可利用的組件,主要在客戶端UI表現(xiàn)上。

    5.JAVA中的多形與繼承?

    可出編程,選擇題。

    6.抽象類與接口?

    接口的好處是將實(shí)現(xiàn)與表現(xiàn)分離。

    抽象類與接口都用于抽象,但是抽象類(JAVA中)可以有自己的部分實(shí)現(xiàn),而接口則完全是一個(gè)標(biāo)識(shí)(同時(shí)有多重繼承的功能)。

     

    7.Java 的通信編程,編程題(或問(wèn)答),用JAVA SOCKET編程,讀服務(wù)器幾個(gè)字符,再寫入本地顯示?

     

    8.JAVA SERVLET API中forward() 與redirect()的區(qū)別?

    forward()方法可以使用原來(lái)的對(duì)象,而且速度較快。

    9.JAVA解析XML的方式?

    SAX、DOM



    10.用JAVA實(shí)現(xiàn)數(shù)據(jù)庫(kù)查詢,這是一道編程題。

    基本操作,不用講了。

    11.用JAVA實(shí)現(xiàn)一種排序 ,比較,JAVA類實(shí)現(xiàn)序列化的方法(二種)?

    如在COLLECTION框架中,實(shí)現(xiàn)比較要實(shí)現(xiàn)什么樣的接口。

    12.JSP中動(dòng)態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)別?

    老一套,動(dòng)態(tài)可以帶參數(shù),靜態(tài)相當(dāng)于一段靜態(tài)HTML文件。

     

    13.應(yīng)用服務(wù)器與WEB SERVER的區(qū)別?

     

    14.設(shè)計(jì)模式與UML方面。

    如工廠模式,解決多數(shù)據(jù)庫(kù)支持問(wèn)題。

    15。 編程:編寫一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。

    但是要保證漢字不被截半個(gè),如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個(gè)”。

    16。在ORACLE大數(shù)據(jù)量下的分頁(yè)解決方法。 一般用截取ID方法,還有是三層嵌套方法。

    17。WEB SERVICE名詞解釋。JSWDL開發(fā)包的介紹。JAXP、JAXM的解釋。SOAP、UDDI解釋。

    18。BS與CS的聯(lián)系與區(qū)別。

    19。LINUX下線程,GDI類的解釋。

    20。JAVA多線程編程。

    用JAVA寫一個(gè)多線程程序,如寫四個(gè)線程,二個(gè)加1,二個(gè)對(duì)一個(gè)變量減一,輸出。

    21。JAVA的基本功: STRING與STRINGBUFFER的區(qū)別。

    22。STRUTS的應(yīng)用(如STRUTS架構(gòu))

     
    一、DOM (文檔對(duì)象模型)
    為 XML 文檔的已解析版本定義了一組接口。解析器讀入整個(gè)文檔,然后構(gòu)建一個(gè)駐留內(nèi)存的樹結(jié)構(gòu),然后代碼就可以使用 DOM 接口來(lái)操作這個(gè)樹結(jié)構(gòu)。
    優(yōu)點(diǎn):整個(gè)文檔樹在內(nèi)存中,便于操作;支持刪除、修改、重新排列等多種功能;
    缺點(diǎn):將整個(gè)文檔調(diào)入內(nèi)存(包括無(wú)用的節(jié)點(diǎn)),浪費(fèi)時(shí)間和空間;
    使用場(chǎng)合:一旦解析了文檔還需多次訪問(wèn)這些數(shù)據(jù);
    硬件資源充足(內(nèi)存、CPU)

    二、SAX
    為解決DOM的問(wèn)題,出現(xiàn)了SAX。
    SAX ,事件驅(qū)動(dòng)。當(dāng)解析器發(fā)現(xiàn)元素開始、元素結(jié)束、文本、文檔的開始或結(jié)束等時(shí),發(fā)送事件,程序員編寫響應(yīng)這些事件的代碼,保存數(shù)據(jù)。
    優(yōu)點(diǎn):不用事先調(diào)入整個(gè)文檔,占用資源少;
    SAX解析器代碼比DOM解析器代碼小,適于Applet,下載
    缺點(diǎn):不是持久的;事件過(guò)后,若沒(méi)保存數(shù)據(jù),那么數(shù)據(jù)就丟了;
    無(wú)狀態(tài)性;從事件中只能得到文本,但不知該文本屬于哪個(gè)元素;
    使用場(chǎng)合:Applet;
    只需XML文檔的少量?jī)?nèi)容,很少回頭訪問(wèn);
    機(jī)器內(nèi)存少;

    三、JDOM
    為減少DOM、SAX的編碼量,出現(xiàn)了JDOM;
    優(yōu)點(diǎn):20-80原則,極大減少了代碼量
    使用場(chǎng)合:要實(shí)現(xiàn)的功能簡(jiǎn)單,如解析、創(chuàng)建等
    Java程序

    但在底層,JDOM還是使用SAX(最常用)、DOM、Xanan

    四、JAPX
    為多個(gè)XML解析器提供了統(tǒng)一編程接口
    更換解析器,不用更改代碼
    使用場(chǎng)合:若不用Jdom,一般建議使用JAPX,將代碼與各種解析器的實(shí)現(xiàn)細(xì)節(jié)隔離。
     
    16。在ORACLE大數(shù)據(jù)量下的分頁(yè)解決方法。 一般用截取ID方法,還有是三層嵌套方法。

    select * from ( select row_.*, rownum rownum_ from (sql) row_ where rownum <= ?) where rownum_ > ?

    posted on 2005-06-16 11:06 蘋果 閱讀(371) 評(píng)論(0)  編輯  收藏 所屬分類: J2EE/JAVA學(xué)習(xí)
    主站蜘蛛池模板: 久久久亚洲欧洲日产国码aⅴ| 一级一级毛片免费播放| 女人被弄到高潮的免费视频 | 国产国产成年年人免费看片| 日韩毛片在线免费观看| 亚洲处破女AV日韩精品| 黄页免费的网站勿入免费直接进入| 亚洲.国产.欧美一区二区三区| 久久激情亚洲精品无码?V| 57pao一国产成视频永久免费 | 亚洲人成人网站18禁| 国产亚洲AV夜间福利香蕉149 | 亚洲AV无码一区二区三区国产| 免费观看久久精彩视频| 亚洲日本成本人观看| 亚洲国产精品国自产拍AV| 女人被免费视频网站| 一区二区免费视频| 亚洲国产成人久久一区二区三区| 国产自偷亚洲精品页65页| 国产一精品一AV一免费孕妇| 美女无遮挡拍拍拍免费视频| 亚洲色偷偷偷综合网| 亚洲爆乳无码一区二区三区| 国产无遮挡吃胸膜奶免费看| 91福利视频免费观看| av网站免费线看| 亚洲精华国产精华精华液好用| 亚洲av无码一区二区三区乱子伦| 免费无码又爽又刺激高潮的视频| 91成人在线免费视频| 国产一级在线免费观看| 免费精品国产自产拍在线观看| 亚洲毛片免费观看| 亚洲成av人在线视| 亚洲午夜av影院| 狠狠久久永久免费观看| 免费观看无遮挡www的小视频| 三级网站在线免费观看| 成人一级免费视频| 美景之屋4在线未删减免费|