java語言基礎知識

來源:互聯網
上載者:User

標籤:機器   起名字   它的   ret   邏輯   定義   浮點   調用   分組   

  一、什麼是電腦

  基於百度百科

  1.簡介

  電腦(computer)俗稱電腦,是現代一種用於高速計算的電子電腦器,可以進行數值計算,又可以進行邏輯計算,還具有儲存記憶功能。是能夠按照程式運行,自動、高速處理海量資料的現代化智能電子裝置。

  2.組成

  電腦是由硬體系統(hardware system)和軟體系統(software system)兩部分組成的。

  傳統電腦系統的硬體單元一般可分為輸入單元、輸出單元、算數邏輯單位、控制單元及記憶單元,其中算數邏輯單位和控制單元合稱中央處理單元(Center Processing Unit,CPU)  硬體系統:1)、電源 2)主板 3)CPU 4)記憶體 5)硬碟 6)音效卡 7)顯卡 8)數據機 9)光碟機 10)顯示器 11)鍵盤 12)滑鼠 13)音箱 14)印表機 15)視頻裝置 16)快閃記憶體盤 17)移動儲存卡及讀卡機

  軟體系統: 

    • 系統軟體
      • 作業系統 -- a.處理器管理、b.作業管理、c.儲存空間管理、d.裝置管理、e.檔案管理
      • 語言處理常式(翻譯程式):翻譯方法由兩種,解釋、編譯
      • 服務程式
      • 資料庫管理程式
    • 應用軟體

  二、java語言概述

  創始人:James Gosling

  java語言特點:簡單性、解釋性、物件導向、高效能、分散式處理、多線程、健壯性、動態、結構中立、安全性、開源、跨平台

  java語言跨平台原理:在需要運行java應用程式的作業系統上,安裝java虛擬機器(JVM Java Virtual Machine)即可,由JVM負責java程式在該系統中的運行

  JRE和JDK的概述:

    什麼是JRE:JVM + java程式所需的核心類庫等。如果運行一個開發好的java程式,電腦中只需要安裝JRE即可

    什麼是JDK:JRE+java的開發工具

  JDK安裝:1.官網下載對應版本 http://www.oracle.com 2.安裝,過程中對路徑進行選擇,不要有中文或者特殊符號如空格等 3.配置JAVA_HOME,對應安裝路徑,在修改path,對應jdk安裝目錄下的bin目錄。

  path和classpath的區別:1.path配置的是可執行檔檔案.exe,配置後可以在不同盤符下訪問path路徑下的可執行檔 2.classpath配置的java的類檔案 .class

  注釋概述及其分類:1.單行注釋 // 多行注釋/* */ 文本注釋 /** */ 2.注釋作用:解釋說明程式,協助調試錯誤

  關鍵字的概述和使用:1.關鍵字是被java語言賦予特定含義的單詞 2.關鍵字特點:組成關鍵字的字母全部小寫 3.常見關鍵字:public static void class等 4.關鍵字的注意事項:goto和const作為保留字存在,目前並不使用

  標識符的概述和組成規則:

    1.標識符就是給類、介面、方法、變數等起名字時使用的字元序列

    2.標識符的組成規則:英文大小寫字母、數字字元、$和_

    3.標識符注意事項:不能使用關鍵字,不能以數字開頭

    4.常見命名規則:見名知意

      包-所有字母小寫,網域名稱倒寫

      類或介面-一個單字首大寫,多個單詞駝峰標識

      方法或變數-一個單詞全部小寫,多個單詞從第二單字首大寫

      常量-一個單詞所有字母大寫,多個單詞所有字母大寫,用底線區分每個單詞

  常量的概述和使用:

    字串常量:用雙引號標識的內容

    整數常量:所有整數

    小數常量:所有小數

    字元常量:用單引號標識的內容,並只能存放單個數字、字母或符號

    布爾常量:true、false

    空常量:null

  進位:

    1byte=8bit  1k=1024b 1M=1024k 1G=1024M。。。

  java中不同進位資料的表現形式:

    位元:由0,1組成,前面加 0b

    八位元:由0,1...7組成,前面加 0

    十進位:0...9組成,前面非零

    十六進位:由0,1...9,a,b,c,d,e,f,前面加0x

  任意進位轉化為十進位數:

    係數:每一位上的資料

    基數:x進位,基數就是x

    權:在右邊,從0開始編號,對應位上的編號即為該位的權

    結果:每一位 係數*(基數權) 的值累加

  十進位到任意進位的轉換:除積倒取餘

  原碼反碼補碼:在電腦內部,所有的運算都是以二進位補碼的形式來運算的

    正數的原反補碼都是一樣的

    負數的反碼是原碼的逐位取反(符號位除外)

    負數的補碼是反碼的末位加1

  變數的概述及格式:

    變數定義格式:資料類型 變數名 = 變數值;

  資料類型的概述及分類:

    java中的資料類型分類:基礎資料型別 (Elementary Data Type)、引用資料類型

    基礎資料型別 (Elementary Data Type)分類(四類八種):

      整數型:

        byte:佔一個位元組 -128~127

        short:佔兩個位元組 -2^15~2^15-1

        int:佔四個位元組 -2^31~2^31-1

        long:佔八個位元組 -2^63~2^63-1

      

      浮點型                float 佔兩個位元組 -3.403E38~3.403E38        double 佔四個位元組-1.798E308~1.798E308           字元型        char 佔兩個位元組 0~65535      布爾型        boolean           boolean理論上是佔八分之一個位元組  定義不同資料類型的變數:    整數類型資料預設:int類型    小數類型資料預設類型:double類型    定義float類型資料後面加F:例:float f = 1.2F    定義long類型的資料後面加L:long l = 2222222222L(大寫)  使用變數的注意事項:    範圍:同一個地區不能使用相同的變數名    初始化值問題:局部變數在使用前必須賦值  資料類型轉換之隱式轉換:    java中資料類型的轉換規則:取值範圍小的資料類型與取值範圍大的資料類型進行運算,會先將小的資料類型提升為大的,再運算    例:byte類型+int類型:byte類型資料先轉換成int類型資料,再做運算    案例:          int a = 10;          byte b = 20;          b = a + b;可能會損失精度,a + b的值是一個int類型而b是byte類型       強制轉換的格式:          b = (byte)(a + b);  字元和字串參與運算:    System.out.println(‘a‘);  輸出字元類型資料 ‘a‘        System.out.println(‘a‘+1);  字元資料‘a‘轉換成int類型97,再與1相加,結果為98        ASCII碼錶需要記住的三個值:          ‘0‘  48          ‘A‘  65          ‘a‘  97      字串資料與其餘資料進行相加,會直接合并到一起,組成新的字串      System.out.println("hello"+‘a‘+1);   結果是"helloa1"      System.out.println(‘a‘+1+"hello");  結果是"98helloa1"  char資料類型:    char型資料範圍:0--65535    Java語言中的字元char可以儲存一個中文漢字:每個字元佔用兩個位元組,中文也是占的兩個位元組  算術運算子的基本用法:    運算子的分類:    算術運算子,賦值運算子,比較(關係或條件)運算子,邏輯運算子,位元運算符,三目(元)運算子    算數運算子有哪些:* +,-,*,/,%,++,--    整數相除只能得到整數,如果想得到小數,必須把資料變化為浮點數類型    / 擷取的是除法操作的商,% 擷取的是除法操作的餘數    %運算子:當左邊的絕對值小於右邊絕對值時,結果是左邊;%運算子結果的符號只和左邊有關係,與右邊無關  算術運算子++和--的用法:    ++:自加。對原有的資料進行+1    --:自減。對原有的資料進行-1    放在運算元的前面,先自增或者自減,然後再參與運算。    放在運算元的後面,先參與運算,再自增或者自減。  賦值運算子的基本用法:    基本的賦值運算子 = :把=右邊的資料賦值給左邊    擴充的賦值運算子:+=,-=,*=,/=,%=  關係運算子的基本用法及其注意事項:    關係運算子(比較子,條件運算子):==,!=(不等於),>,>=,<,<=    結果為boolean類型  邏輯運算子的基本用法:    &&和&的區別?    &&具有短路效果。左邊是false,右邊不執行(結果為false)    &是無論左邊是false還是true,右邊都會執行  ||和|的區別?    || 具有短路效果。左邊是true,右邊不執行(結果為true)    | 是無論左邊是false還是true,右邊都會執行  位元運算符的基本用法:    位異或運算子的特點及面試題    ^的特點:一個資料對另一個資料位元異或兩次,該數本身不變        面試題:        請自己實現兩個整數變數的交換        假如  a = @    b = #        a = a ^ b = @ ^ #        b = a ^ b = @ ^ # ^ # = @        a = a ^ b = @ ^ # ^ @ = #        最後結果: b = @    a = #      <<:左移    左邊最高位丟棄,右邊補齊0    >>:右移    最高位是0,左邊補齊0;最高為是1,左邊補齊1    >>>:無符號右移 無論最高位是0還是1,左邊補齊0    案例:最有效率的算出2 * 8的結果      2<<3  三元運算子的基本用法:    三元運算子的格式:(關聯運算式) ? 運算式1 : 運算式2;    當關聯運算式為true,結果為運算式1    當關聯運算式為false,結果為運算式2  鍵盤錄入的基本格式:    格式:    a:導包      格式:import java.util.Scanner;      位置:在class上面。           b:建立鍵盤錄入對象      格式:Scanner sc = new Scanner(System.in);           c:通過對象擷取資料         格式:int x = sc.nextInt();    注意:無論我們想要鍵盤輸入幾次資料,建立鍵盤錄入對象只要一次  選擇結構if語句格式:    if語句的第一種格式:    if(比較運算式) {      語句體;    }    當比較運算式成立的時候,就運行語句體;反之,不運行  注意事項:    比較運算式無論簡單還是複雜,結果必須要是boolean類型的值    if語句控制的語句體如果是一條語句,大括弧可以省略(建議不省略)    一般來說:有左大括弧就沒有分號,有分號就沒有左大括弧     if語句的格式2:    if(比較運算式) {      語句體1;    }else {      語句體2;    }    當比較運算式成立的時候,就運行語句體1;反之,運行語句體2   if語句的格式2和三元的相互轉換問題:    三元運算子實現的,都可以採用if語句實現。反之不成立    什麼時候if語句實現不能用三元改進呢?    當if語句控制的操作是一個輸出語句的時候就不能。    為什麼呢?因為三元運算子是一個運算子,運算子操作完畢就應該有一個結果,而不是一個輸出。     if語句的格式3:      if(比較運算式1) {        語句體1;      }else if(比較運算式2) {        語句體2;      }else if(比較運算式3) {        語句體3;      }      ...      else {        語句體n+1;      }   選擇結構switch語句的格式及其解釋:    switch(運算式) {      case 值1:        語句體1;        break;      case 值2:        語句體2;        break;        …      default:           語句體n+1;         break;      }    注意:運算式裡面可以放的資料類型:      基礎資料型別 (Elementary Data Type):byte short char int      引用資料類型:枚舉   String(字串)    執行順序:先計算運算式的值,然後和case後面的匹配,如果有就執行對應的語句;否則執行default控制的語句  選擇結構switch語句的注意事項:    A: case後面只能是常量,不能是變數,而且,多個case後面的值不能出現相同的    B: break最好不要省略,會出現case穿透    C: default並不是一定要放在最後,但是一定是最後才會去執行    D:遇見break或者大括弧就結束了  選擇結構if語句和switch語句的區別:    switch 和 if語句的使用情境區別?      switch建議判斷固定值的時候用      if建議判斷區間或範圍的時候用  迴圈結構概述和for語句的格式及其使用:    A:迴圈結構的分類
      for,while,do...while 
    B:迴圈結構for語句的格式:
      for(初始設定式;條件運算式;迴圈後的動作表達式) {
        迴圈體;
      }
    C執行流程:
      a:執行初始化語句
      b:執行判斷條件陳述式,看其傳回值是true還是false
        如果是true,就繼續執行
        如果是false,就結束迴圈
      c:執行迴圈體語句;
      d:執行迴圈後的動作表達式
      e:回到B繼續。    注意:for語句在迴圈結束後,定義的變數會被釋放,接下來的語句要使用,需重新定義  迴圈結構while語句的格式和基本使用:    A:迴圈結構while語句的格式:    while迴圈的基本格式:
      while(判斷條件陳述式) {
        迴圈體語句;
      }
    完整格式:
      初始化語句;
      while(判斷條件陳述式) {
        迴圈體語句;
        控制條件陳述式;
      }    B:執行流程:
      a:執行初始化語句
      b:執行判斷條件陳述式,看其傳回值是true還是false
        如果是true,就繼續執行
        如果是false,就結束迴圈
      c:執行迴圈體語句;
      d:執行控制條件陳述式
      e:回到B繼續。  迴圈結構do...while語句的格式和基本使用:    A:迴圈結構do...while語句的格式:
      do {
        迴圈體語句;
      }while(判斷條件陳述式);
    完整格式;
      初始化語句;
      do {
        迴圈體語句;
        控制條件陳述式;
      }while(判斷條件陳述式);
    B:執行流程:
      a:執行初始化語句
      b:執行迴圈體語句;
      c:執行控制條件陳述式
      d:執行判斷條件陳述式,看其傳回值是true還是false
        如果是true,就繼續執行
        如果是false,就結束迴圈
      e:回到b繼續。  迴圈結構三種迴圈語句的區別:    三種迴圈語句的區別:
      do...while迴圈至少執行一次迴圈體。
      而for,while迴圈必須先判斷條件是否成立,然後決定是否執行迴圈體語句。    for迴圈和while迴圈的區別:
      如果你想在迴圈結束後,繼續使用控制條件的那個變數,用while迴圈,否則用for迴圈。      不知道用誰就用for迴圈。因為變數及早的從記憶體中消失,可以提高記憶體的使用效率。  迴圈結構注意事項之死迴圈:    A:一定要注意控制條件陳述式控制的那個變數的問題,不要弄丟了,否則就容易死迴圈。
    B:兩種最簡單的死迴圈格式  - for條件判斷預設為true
      while(true){...}
      for(;;){...}  注意:
    ‘\x‘ x表示任意,\是轉義符號,這種做法叫轉移字元。
    ‘\t‘    tab鍵的位置
    ‘\r‘    斷行符號
    ‘\n‘    換行
    ‘\"‘    可以用轉義符號列印雙引號和單引號
    ‘\‘‘  控制跳躍陳述式break語句:    break的使用情境:
      只能在switch和迴圈中 (結束迴圈:就近原則)  控制跳躍陳述式continue語句:    continue的使用情境
      只能在迴圈中   控制跳躍陳述式標號:    標號:標記某個迴圈對其控制
    標號組成規則:其實就是合法的標識符  控制跳躍陳述式return語句:    A:return的作用
      返回
      其實它的作用不是結束迴圈的,而是結束方法的。
    B:案例示範
      return和break以及continue的區別?
      return是結束方法
      break是跳出迴圈
      continue是終止本次迴圈繼續下次迴圈  方法概述和格式說明:    A:為什麼要有方法
      提高代碼的複用性 
    B:什麼是方法
      完成特定功能的代碼塊。 
    C:方法的格式
      修飾符 傳回值類型 方法名(參數類型 參數名1,參數類型 參數名2...) {
        方法體語句;
        return 傳回值; 
      } 
    D:方法的格式說明
      修飾符:目前就用 public static。後面我們再詳細的講解其他的修飾符。
      傳回值類型:就是功能結果的資料類型。
      方法名:符合命名規則即可。方便我們的調用。
      參數:
        實際參數:就是實際參與運算的。
        形式參數;就是方法定義上的,用於接收實際參數的。
      參數類型:就是參數的資料類型
      參數名:就是變數名
      方法體語句:就是完成功能的代碼。
      return:結束方法的。
      傳回值:就是功能的結果,由return帶給調用者。     如何寫一個方法
      1,明確傳回值類型
      2,明確參數列表   方法的注意事項:    A:方法調用(有具體傳回值)
      a:單獨調用,一般來說沒有意義,所以不推薦。
      b:輸出調用,但是不夠好。因為我們可能需要針對結果進行進一步的操作。
      c:賦值調用,推薦方案。
    B:案例示範
      a:方法不調用不執行
      b:方法與方法是平級關係,不能嵌套定義
      c:方法定義的時候參數之間用逗號隔開
      d:方法調用的時候不用在傳遞資料類型
      e:如果方法有明確的傳回值,一定要有return帶回一個值  方法重載概述和基本使用:    方法重載:
      在同一個類中,方法名相同,參數列表不同。與傳回值類型無關。
      參數列表不同:
        A:參數個數不同
        B:參數類型不同
        C:參數的順序不同(算重載,但是在開發中不用)

 

    

 

  

 

  

java語言基礎知識

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.