乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      JAVA速成

       昵稱22369024 2015-04-02

      一  基本知識

      1 數(shù)據(jù)類型

      類似于c/c++


      對于long類型常量書寫時(shí),要在數(shù)字后面加上L或者l。0L
          對于float類型常量書寫時(shí),要在小數(shù)點(diǎn)后面加上F或者f。0.0F
          對于double類型常量書寫時(shí),要在小數(shù)點(diǎn)后面加上D或者d。 0.0D

      數(shù)據(jù)類型之間的轉(zhuǎn)換
      Java中也有隱式轉(zhuǎn)換(Java則叫做自動轉(zhuǎn)換)和顯式轉(zhuǎn)換(Java則叫做強(qiáng)制轉(zhuǎn)換)。自動轉(zhuǎn)換由編譯器實(shí)現(xiàn),強(qiáng)制轉(zhuǎn)換則由用戶編程實(shí)現(xiàn),再由編譯器執(zhí)行。

      自動轉(zhuǎn)換的規(guī)則:低級數(shù)據(jù)類型 ==》 高級數(shù)據(jù)類型;所占字節(jié)數(shù)低的數(shù)據(jù)類型 ==》 所占字節(jié)數(shù)高的數(shù)據(jù)類型
      例如:byte short int long(整數(shù)類型) ==》 float double(浮點(diǎn)數(shù)類型)
            byte short(8字節(jié)和16字節(jié)) ==》int(32字節(jié))
            byte short int(8字節(jié),16字節(jié)和32字節(jié)) ==》 long(64字節(jié))
            float(32字節(jié)) ==》 double(64字節(jié))
            char(16字節(jié)) ==》 int(32字節(jié))
      注:整數(shù)類型中的long,雖然占64個(gè)字節(jié),但是卻能自動轉(zhuǎn)換成float類型(32字節(jié))。因此,我認(rèn)為,在自動轉(zhuǎn)換的過程中,先考慮數(shù)據(jù)類型的等級高低,再考慮數(shù)據(jù)類型的所占字節(jié)數(shù)。

      再注:從簡單數(shù)據(jù)類型圖中不難看出,各數(shù)據(jù)類型的長度均為固定值,這使得Java能夠在不同的平臺上運(yùn)行相同的Java程序時(shí)不用修改代碼,提高了程序的可移植特性。
       

      2  頭文件

      (1)類似于c++的命名空間或者是頭文件

      在JAVA中叫做包(package)。Java的核心包中,我們常用的有這樣5種:
      (1)java.lang , 封裝了所有編寫java程序所需要的基本類,包括Object、Class、System等。其中,Object類是所有類的根類,任何類都是繼承該類而建立的;Class類是由編譯器動態(tài)生成對象的一個(gè)伴隨每一個(gè)類的特殊類;System類是一個(gè)final類,主要提供標(biāo)準(zhǔn)I/O和對系統(tǒng)環(huán)境信息的訪問等,這個(gè)類不能被實(shí)例化。
      (2)java.awt , 窗口工具包,提供操作圖形用戶界面的基本功能。
      (3)java.applet , 封裝Applet類的包,提供Applet執(zhí)行時(shí)需要的類。
      (4)java.io , 封裝I/O操作的包。
      (5)java.util , 提供使用程序類以及集合類等常用的工具類。


      3 程序結(jié)構(gòu)

      首先,是package語句,用來指定源文件所在的包。

      然后,是public classDefinitiom,也就是公共類,用來指定源文件的類名,這個(gè)類名要與源文件名相同,可有0個(gè)或1個(gè)。
      再然后,是classDefinition,也就是一般類,可以有若干個(gè),也可以沒有。
      注:一個(gè)java源文件中,最多只能有一個(gè)public類,且必須與文件名相同。

      我們的第一個(gè)程序:

      import java.lang.*;
      import java.io.*;

      class matrix  //一般類 
      {     
          void luoyang1()
         {   } 
      }

      public class Matrixkey //public類,類名要與文件名相同
      {     
           public static void main(String args[])
           {
              System.out.println("很高興認(rèn)識你,我是Matrixkey");
            }
      }


      Java的解釋執(zhí)行

      在系統(tǒng)運(yùn)行Java程序時(shí),Java編譯器將Java程序(*.java文件)轉(zhuǎn)化為字節(jié)碼(*.class文件),在運(yùn)行時(shí),解釋器將編譯得到的字節(jié)碼進(jìn)行解釋執(zhí)行。
      Java語言一個(gè)源程序可以含有多個(gè)類(public類最多一個(gè)),每個(gè)類編譯都生成一個(gè)字節(jié)碼文件。也就是說,有幾個(gè)類,就有幾個(gè)字節(jié)碼文件。
      這就是,我們在執(zhí)行一個(gè)Java程序時(shí)要先用javac *.java將Java程序轉(zhuǎn)化為字節(jié)碼的原因。
      注:Java區(qū)分大小寫,因此上面的程序中,public類的類名:Matrixke,那么這個(gè)java程序的文件名必須為:Matrixkey.java


      5 輸入輸出 

      輸出使用println方法。println方法的使用方法如下:

      System.out.println( x );

       System是java.lang.*包中的類,out是System類的一靜態(tài)屬性,而println()是out屬性的一個(gè)靜態(tài)方法。該方法用于打印后再換行,可以打印基本類型的數(shù)據(jù)以及字符串等,'+' 在字符串中代表將字符串相互連接。

              int x = 4772;
              /* 輸出一個(gè)字符m */
              System.out.println(m);  
             
              * 輸出一個(gè)數(shù)字4772 */

              System.out.println("變量x等于"+x); //或者直接System.out.println(x);
           
              /* 輸出一個(gè)字符串matrixkey */

              System.out.println("matrixkey");

              /* 輸出漢字落陽*/
              
      System.out.println("落陽");
         

      println方法打印后自動換行,因此,下面2條代碼輸出結(jié)果是一致的

      int x = 100;
      System.out.println(x);
      System.out.print(x + "\n");

      注意:"+"號用來連接字符串是有點(diǎn)麻煩的! 例如:
      System.out.println(1+2+"3"); 
      Sysrem.out.println("1"+2+3); 
      '+'號優(yōu)先級別,從左到右 
      所以打印結(jié)果是這樣的:
      33(先做1+2 變成字符串"3" 連接后面的"3",所以打印33) 
      123(先把"1"和2連接成為"12",在連接3就變成"123")


      6 運(yùn)算符和流程控制

      C/C++類似,注意switch不能做實(shí)數(shù)的判斷


      二 類  

      1 概念

      類作為JAVA程序的基本要素,由成員變量(即屬性)和成員方法組成,必須先定義在使用。
      類聲明格式:[修飾符] class 類名 [extends 父類名] [implements 類實(shí)現(xiàn)的接口列表]
      (1)修飾符用于確定類的訪問控制權(quán)限(public和friendly)以及類型(abstract和final)
      (2)類名是合法的標(biāo)識符,并且首字母大寫
      (3)保留字extends指明聲明的類所繼承的父類
      (4)[ ]里的內(nèi)容可選

      /* JAVA中類的聲明和繼承*/
      public class Matrixkey
      {成員變量
       成員方法}
       class Matrix extends Matrixkey

      /* C#中類的聲明和繼承*/
      public class Matrixkey
      {成員變量
       成員方法}
       class Matrixk : Matrixkey

      類體格式:class 類名 {成員變量 成員方法}
      其中成員變量定義的格式為:<修飾符> <類型> <變量名稱>
              成員方法定義的格式為:<修飾符> <返回值類型> <方法名稱> ( [ <參數(shù)表> ] )
      (1)成員變量和成員方法可以通過public private protected等修飾符控制訪問權(quán)限
      (2)java中,方式是通過值傳遞參數(shù),而不是通過地址,因此方法不可以改變參數(shù)的值
      例:

      public class Matrixkey  //類聲明
       { public int a;
          public double b;        //成員變量的聲明
          
          static void Min(double c)  //成員方法的聲明 
       }

      類成員的修飾符有兩種
      訪問限定符:public  可以被外部類訪問
                              protected  可以被同一個(gè)包中的類以及該類的子類訪問
                              private  只能在該類內(nèi)部被訪問
                            
        default  可以被同一個(gè)包中的類訪問
      非訪問限定符:靜態(tài)修飾符 static
                                  最終修飾符  final
             抽象修飾符 abstract  syncronized

      2 類的繼承

      在java語言中,類繼承是通過extends保留字實(shí)現(xiàn)的,格式為:

       class Subclass extends Superclass {...}

      (1) 用extends指明新定義的子類(Subclass)的父類(Superclass),就在兩個(gè)類之間建立了繼承的關(guān)系
      (2)子類可以從父類繼承所有非private的屬性和方法作為自己的成員
      (3)若子類成員變量的名字 和 父類成員變量的名字 相同,則子類成員隱藏父類成員
      (4)若子類成員方法 與 父類成員方法的名字,返回值類型,參數(shù)表都相同,則子類方式是父類方法的重寫
      (5)方法重寫時(shí)注意:子類方法的訪問權(quán)限要高于父類

      子類方法的訪問權(quán)限比父類方法的訪問權(quán)限要高,一般用Super關(guān)鍵字來訪問父類的方法和變量,但是父類的對象不能直接訪問子類的方法和變量


      3  數(shù)組

      定義一維數(shù)組的格式:<類型> <數(shù)組名> [ ]; 或者 <類型> [ ] <數(shù)組名>;
      因此,int A [ ]; int [ ] A ; 兩者是相同的
      (1)<類型>可以是簡單或者復(fù)雜數(shù)據(jù)類型
      (2)進(jìn)行數(shù)組定義時(shí),不分配內(nèi)存,因此不要求給出其元素的個(gè)數(shù)
      (3)數(shù)組分配內(nèi)存通過new操作符或靜態(tài)初始化實(shí)現(xiàn)
      創(chuàng)建一維數(shù)組的格式:<數(shù)組名> = new <類型> [ <數(shù)組大小> ];
                                                A = new int [3];
      定義的同時(shí)創(chuàng)建:<類型> [ ] 數(shù)組名 = new <類型> [ <數(shù)組大小> ];
                                       int [ ] A = new int [3];
      初始化數(shù)組:對已定義的數(shù)組元素賦值,有動態(tài)和靜態(tài)兩種方式
      (1)當(dāng)初始化元素?cái)?shù)目較少,采用靜態(tài)初始化
                  int A[ ];
                  A[0] = 1; A[1] = 2;A[2] = 3;
      (2)對簡單類型,定義數(shù)組的同時(shí),用new操作符進(jìn)行初始化
                 int [ ] A = new int [3]{1,2,3};
      (3)當(dāng)初始化元素?cái)?shù)目較多,可以利用循環(huán)語句對數(shù)組元素動態(tài)初始化

      多維數(shù)組
      定義的格式:<類型> <數(shù)組名> [ ] [ ];  或者 <類型> [ ] [ ] <數(shù)組名>;
      初始化:在定義的同時(shí)對數(shù)組元素進(jìn)行賦值(靜態(tài))
                      可以按順序直接對每一維分配內(nèi)存或從最高維開始對每一維分配內(nèi)存(動態(tài))

      數(shù)組操作
      (1)方法arraycopy()用來進(jìn)行數(shù)組的拷貝
      (2)ArrayList類用來動態(tài)調(diào)整數(shù)組的大小  


      4 字符串的表示

      (1)用String類表示字符串,String類的對象表示的是固定長度的字符串
      (2)用StringBuffer類表示字符串,StringBuffer類的每個(gè)對象都是長度可變的字符串
      字符串的操作
      (1)對String的修改
      String類提供了concat() replace() substring()方法分別實(shí)現(xiàn)字符串的連接,替換,取子串的操作;“+”運(yùn)算符也可以用來連接字符串。
      (2)對StringBuffer的修改
       StringBuffer類表示的是可變長度的字符串,使用它,就可以方便地在字符串中插入或在字符串尾追加字符。相應(yīng)的方法是:insert(),setCharAt(),append()。
      (3)判斷兩個(gè)字符串是否相等,使用equals()方法

      三  異常處理 

      參考類似c/c++。
      對于try和catch子句的排列方式,下列哪個(gè)是正確的?
      A。 子類異常在前,父類異常在后
      B。 父類異常在前,子類異常在后
      C。 只能有子類異常
      D。 父類異常和子類異常不能同時(shí)出現(xiàn)在同一個(gè)try程序段內(nèi)
      解析:在java語言中,在捕獲父類異常時(shí)對其子類異常也捕獲了,根據(jù)try與catch的匹配原則,盡量使用一個(gè)父類去捕獲其所有子類的異常,而父類和子類異常是可以同時(shí)出現(xiàn)的。
      答案:A

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多