1. 程式人生 > >Android中JAVA知識彙總

Android中JAVA知識彙總

文章目的:學習java的常用語句和概念

 前言:java作為跨平臺應用軟體的面向物件的程式設計語言,自從面世後就非常流行,發展迅速,對C++語言形成了有力衝擊,今天就開始教大家入門java這門語言,首先,來了解一些基礎常識。

一. Java語言基礎組成

         關鍵字         運算子

         識別符號         語句

         註釋            函式

         常量和變數     陣列

二. 關鍵字:被java賦予了特殊含義的單詞

         用於定義訪問許可權修飾符的關鍵字

         private    protected   public

         用於定義類,函式,變數修飾符的關鍵字

         abstract    final   static    synchronized

         用於定義類與類之間關係的關鍵字

         extends    implements

         用於定義建立例項及引用例項,判斷例項的關鍵字

         new    this   super    instanceof

         用於異常處理的關鍵字

         try    catch   finally    throw    throws

         用於包的關鍵字

         package    import

         其他修飾符關鍵字

         native    strictfp   transient    volatile    assert

三. 識別符號

         在程式中自定義的一些名稱。

         識別符號有一些規則:

         由26個英文字母大小寫,數字:0-9符號:_$組成

         定義合法識別符號規則:

                   1.數字不可以開頭。

                   2.不可以使用關鍵字。

         Java中嚴重區分大小寫。

         注意:在起名字時,為了提高閱讀性,要儘量有意義。

四. Java中的名稱規範

         包名:多單片語成時所有字母都小寫。

                   xxxyyyzzz

         類名介面名:多單片語成時,所有單詞的首字母大寫

                   XxxYyyZzz

         變數名和函式名:多單片語成時,第一個單詞首字母小寫,第二個單詞開始每個首字母大寫

                   xxxZzzYyy

         常量名:所有字母都大寫。多單詞時每個單詞用下劃線連線。

                   XXX_YYY_ZZZ

五. 註釋

         用於註解說明解釋程式的文字就是註釋

         提高了程式碼的閱讀性

         java中的註釋格式:

                   單行註釋:

                            格式://註釋文字

                   多行註釋:

                            格式:/*註釋文字*/

                   文件註釋:

                            格式:/**註釋文字*/

         對於單行註釋和多行註釋,被註釋的文字,不會被JVM解釋執行。

         對於文件註釋,是java特有的註釋,其中註釋內容可以被JDK提供的

         工具javadoc所解析,生成一套以網頁檔案形式體現的該程式的說明

         文件。

         註釋是一個程式設計師必須要具有的良好的程式設計習慣。

         初學者編寫程式可以養成習慣:先寫註釋再寫程式碼。

         將自己的思想通過註釋先整理出來再用程式碼去體現。

         因為程式碼僅僅是思想的一中體現形式而已。

         /**

         這是我的HelloWorld小程式。

         @author小強

         */

         classDemo

         {

                   /*

                   這是主函式,是程式的入口

                   它的出現可以保證程式的獨立執行。

                   */

                   publicstatic void main(String[] args)

                   {

                            //這是輸出語句用於將括號內的資料列印到控制檯。

                            System.out.println("HelloWorld");

                   }

         }

六. 常量與變數

         常量表示不能改變的數值。

         Java中常量的分類:

                   1.整數常量:所有整數

                   2.小數常量:所有小數

                   3.布林型常量:較為特有,只有兩個數值:true、false

                   4.字元常量:將一個數字字母或者符號用單引號''標識。

                   5.字串常量:將一個或者多個字元用雙引號""標識。

                  6.null常量:只有一個數值就是null(到物件的時候會用到,現在先不說)

         對於整數,Java有三種表現形式:

                   十進位制:0-9,滿10進1

                   八進位制:0-7,滿8進一,用0開頭表示

                   十六進位制:0-9,A-F,滿16進一,用0x開頭表示

                   二進位制:0-1,滿2進1.任何資料在計算機中都是以二進位制的形式存在的。

                   二進位制早期由電訊號演變而來。在記憶體當中我們可以用數字1和0表示這

                   些開關。用1和0的不同排列組合去代表一些資料。八個二進位制代表一個

                   位元組。由n多位元組去代表一些資料。

七. 進位制的基本轉換

         十進位制轉成二進位制         除以2取餘數

         二進位制轉成十進位制         乘以2的冪數

         負數的二進位制表現形式

                   對應的正數二進位制取反加1

八. 變數的概念

         記憶體中的一個儲存區域

         該區域有自己的名稱(變數名)和型別(資料型別)

         該區域的資料可以在同一類型範圍內不斷變化

為什麼要定義變數:

         用來不斷的存放同一型別的常量,並可以重複使用

使用變數注意:

         變數的作用範圍(一對{}之間有效)

         初始化值

定義變數的格式:

         資料型別  變數名  =  初始化值;

         注:格式是固定的,記住格式,以不變應萬變。

理解:變數就如同數學中的未知數。

九. Java語言是強型別語言,對於每一種資料都定義了明確的具體資料型別,在記憶體中分配了不同大小的記憶體空間

         資料型別:基本資料型別、引用資料型別

                            基本資料型別:數值型、字元型(char)、布林型(boolean)(預設為false)

                                                        0~6535              true、false

                                           數值型:整數型別(byte(-128~127),short(-32768~32767),int,long)

                                                               1位元組(-2^7~2^7-1),                                      

                                                               2位元組(-2^15~2^15-1),                                           

                                                               4位元組(-2^31~2^31-1),

                                                               8位元組

                                                     浮點型別(float,double)(小數預設是double)

                                                                 4位元組(+-3.40282347E+38F),

                                                                 8位元組(大約+-1.79769313486231570E+308(16位有效數字))

                            引用資料型別:類(class)、介面(interface)、陣列([])

         整數預設:int         小數預設:double

十. 常量與變數

         自動型別轉換(也叫隱式型別轉換)

         強制型別轉換(也叫顯示型別轉換)

         型別轉換的原理

         什麼時候要用強制型別轉換?

         表示式的資料型別自動提升

                   所有的byte型、short型和char的值將被提升到int型。

                   如果一個運算元是long型,計算結果就是long型

                   如果一個運算元是float型,計算結果就是float型。

                   如果一個運算元是double型,計算結果就是double型。

         分析

                   System.out.println('a')與System.out.println('a'+1)的區別。

十一. 運算子

         算術運算子

         賦值運算子

         比較運算子

         邏輯運算子

         位運算子

         三元運算子

十二. 算術運算子:

運算子              運算                   範例                   結果

+                正號                   +3              3

-                 負號                   b=4;-b;               -4

+                加              5+5            10

-                 減              6-4             2

*                乘              3*4            12

/                 除              5/5            1

%               取摸                   5%5           0

++              自增(前)  a=2;b=++a;       a=3;b=3

++              自增(後)  a=2;b=a++;       a=3;b=2

--                自減(前)  a=2;b=--a;         a=1;b=1

--                自減(後)  a=2;b=a--;         a=1;b=2;

+                字串相加     "He"+"llo"        Hello

十二. 賦值運算子

         符號:

                   =,+=,-=,*=,/=,%=

         示例:

                   inta,b,c;a=b=c=3;

                   inta = 3;a+=5;等同運算a=a+5;

         思考:

                   shorts = 3;

                   s= s + 2;//兩次運算:先求和,再賦值

                   s+= 2;//只有一次賦值運算,內部自動進行型別轉換。

                   有什麼區別?

s=s+2//編譯失敗,因為s會被提升為int型別,運算後的結果還是int型別。無法賦值給short型別。

s+=2//編譯通過,因為+=運算子在給s賦值時,自動完成了強轉操作。

十三. 比較運算子

運算子              運算                   範例                   結果

==              相當於              4==3                   false

!=               不等於              4!=3          true

<                小於                   4<3            false

>                大於                   4>3            true

<=              小於等於         4<=3                   false

>=              大於等於         4>=3                   true

instanceof        檢查是否是類的物件"Hello"instanceof String;  true

注1:比較運算子的結果都是boolean型,也就是要麼是true,要麼是false。

注2:比較運算子"=="不能誤寫成"="。

十四. 邏輯運算子

運算子              運算                   範例                   結果

&               AND(與)            false&true        false

|                 OR(或)               false|true         true

^                XOR(異或)        true^false         true

!                 NOT(非)            !true                  false

&&            AND(短路)       false&&true    false

||               OR(短路) false||true       true

十五. 位運算子

運算子              運算                   範例

<<              左移                   3 << 2 = 12  --> 3*2*2=12

>>              右移                   3 >> 1 = 1   --> 3/2=1

>>>            無符號右移     3 >>> 1 = 1  --> 3/2=1

&               與運算              6 & 3 = 2

|                 或運算              6 | 3 = 7

^                異或運算         6 ^ 3 = 5

~                反碼                   ~6 = -7

位運算是直接對二進位制進行運算。

十六. 位運算練習

         1.最有效率的方式算出2乘以8等於幾?

                   2<<3

         2.對兩個整數變數的值進行互換(不需要第三方變數)

十七. 三元運算子

         格式

                   (條件表示式)?表示式1:表示式2;

                   如果條件為true,運算後的結果是表示式1;

                   如果條件為false,運算後的結果是表示式2;

         示例:

                   獲取兩個數中大數

                   intx = 3,y = 4,z;

                   z= (x>y)?x:y;//z變數儲存的就是兩個數的大數。

十八. 程式流程控制

         順序結構

         判斷結構

         選擇結構

         迴圈結構

十九. 判斷結構

         if語句

         三種格式:

                   1.if(條件表示式)

                            {

                                     執行語句;

                            }

         -------------------------------------------

                   2.if(條件表示式)

                            {

                                     執行語句;

                            }

                            else

                            {

                                     執行語句;

                            }

         -------------------------------------------

                   3.if(條件表示式)

                            {

                                     執行語句;

                            }

                            elseif(條件表示式)

                            {

                                     執行語句;

                            }

                            else

                            {

                                     執行語句;

                            }

二十. 選擇結構

         switch語句

         格式:

                   switch(表示式)

                   {

                            case取值1:

                            執行語句;

                            break;

                            case取值2:

                            執行語句;

                            break;

                            ...

                            default:

                            執行語句;

                            break;

                   }

switch語句的特點:

         1.switch語句選擇的型別只有四種:byte,short,int,char

         2.case之間與default沒有順序。先執行第一個case,沒有匹配的

         case執行default。

         3.結束switch語句的兩種情況:遇到break,執行到switch語句結束

         4.如果匹配的case或者default沒有對應的break,那麼程式會繼續

         向下執行,執行可以執行的語句,直到遇到braek或者switch結尾結束。

歡迎大家關注微信公眾號進行技術交流和提出意見, 歡迎大家關注我的微信公眾號,我一定會最快回復你!