java EE_NZ-JAVA01 java 學習 第一週總結

NZ-JAVA01第一週

Day01

軟件安裝

開班

JDK8.0

配置了環境變量

  • path裏面配置了 jdk的bin目錄

Dos命令

  • cd
  • dir
  • cls
  • java
  • javac
  • cd …

java 的歷史

  • 1996年發佈jdk 1.0
  • 1999年發佈j2se,j2ee,j2me
  • 2005年更名java se 、java EE、java ME
  • 2009年被Oracle收購
  • 2011年由oracle 發佈java 7.0
  • 2014年由oracle 發佈java 8.0

java語言的特定

  • 面向對象

    使用計算機模擬現實世界,解決現實世界貼近人類思維模式

  • 簡單

    相對於C,C++,C#,不易造成內存溢出、減少代碼量、代碼可讀性強

  • 跨平臺

    操作系統、服務器、數據庫

第一個java程序

  • 新建一個Demo.java的文件

  • helloword程序

    public class Demo{
    public static void main(String[] ra){
    System.out.println(“hello word”);
    }
    }

Day02

名詞解釋

  • JVM 虛擬機

    使用軟件在不同操作系統中,模擬相同環境

  • JRE 運行環境

    包含jvm 和解釋器,完整的java運行環境

  • JDK 開發環境

    包含jre +類庫+開發工具包(編譯器+調試工具)

類的闡述

  • 同一個源文件中可以定義多個類
  • 編譯後,每個類都會生成一個獨立的 .calss 文件
  • 一個類中,只能有一個主函數,每個類都可以有自己的主函數
  • public 修飾的類稱爲公開類,要求類名必須與文件名稱完全相同,包含大小寫
  • 一個源文件中,只能有一個公開類

類的詳解

  • 類名的每個單詞的首字母必須大寫
  • 一個類只能有一個main函數

package com.qianfeng.ls.test;

public class Test{
public static void main(String[] args){

	System.out.println("test");

}

}

  • 作用:類似於文件夾,用於管理字節碼(.class)文件
  • 語法:package 包名
  • 位置:必須寫在源文件的第一行
  • 帶包編譯: javac -d . 源文件名稱.java (自動生成目錄結構)
  • 帶包運行: java 包名.類名 (包名+類名又稱全限定名)
  • 採用域名倒置的規則: www.baidu.com.cn ——》 cn.com,baidu.www

編碼規範

  • 層次之間必須縮進(Tab: 一個製表位(4個空格))

  • 一行只寫一句代碼

  • 註釋

    • 單行註釋
    • 多行註釋
    • 文檔註釋

書寫格式

  • 類名,每個單詞的首字母都要大寫
  • 包名,儘量全部採用小寫;公司域名的倒寫
  • 需要採用縮進;儘量一行只寫一句代碼

標識符命名

  • 類名

  • 包名

  • 屬性名

  • 方法名

  • 約定俗成

    • 望文生義、見名知義
    • 類名由一個或多個單詞組成,每個單詞首字母大寫
    • 函數名、變量名由一個或多個單詞組成,首單詞首字母小寫,拼接詞首字母
    • 包名全小寫,只可以使用特殊字符“.”, 並且不以“.”開頭或結尾
    • 常量全大寫,多個單詞用_連接
  • 語法規定

Day03

數據的類型

  • 基本數據類型

    • 整型

      • int

        • 4個字節
    • 字節型

      • 1個字節
    • 短整型

      • short

        • 2個字節
    • 長整型

      • long

        • 8個字節
    • 浮點型

      • float

        • 4字節
      • double

        • 8字節
    • 布爾型

      • true
      • false
    • 字符

      字符賦值 :char cl = ‘A’ 【通過‘’ 描述爲字符賦值】

      整數賦值: char c2 = 65; 【 通過十進制數65在字符集中對應的字符賦值】

      進制賦值 : char c3 = ‘\u0041’; 【通過十六進制數41 在字符集中所對應的字符賦值】

      • char

        • 2個字節
  • 引用數據類型

    • 字符串

      • String
    • 數組

    • 對象

變量

  • 概念

    • 計算機內存中的一塊存儲空間,是存儲數據的基本單元
  • 變量的組成

    • 數據類型
    • 變量名
    • 變量值
  • 變量的定義流程

    • 聲明

      數據類型 變量名;
      int money ;//開闢整數變量空間

    • 賦值

      賦值;
      變量名 = 值;
      money = 100; //將整數值賦給變量

      注意:java 是強類型語言,變量的類型必須與數據的類型一致

    • 方式

      • 先聲明,再賦值

        數據類型 變量名;
        變量名 = 值;

      • 聲明並賦值

        數據類型 變量名 = 值;

      • 多個類型相同的聲明與賦值

        數據類型 變量1 ,變量2 ,變量2 =值3 ,值4, 值5 =值5;

  • 變量值

轉義字符

  • \n

    • 換行符
  • \t

    • 縮進(製表位)
  • \

    • 反斜線
    • 單引號
  • ‘’

    • 雙引號

類型轉換

  • 由低到高自動轉;由高到低強制轉

  • 規則

    • 整數長度足夠,數據完整

      例子:
      int i = 100; byte b =(byte)i; //b = 100

    • 整數長度不夠,數據截斷

      例子:
      int i = 10000 ; byte b =(byte)i;
      //b = 16 (符號位變化,可能變爲負數)

    • 小數強轉整數,數據截斷

      例子:
      double d = 2.5; int i = (int)d;
      //i =2(小數位舍掉)

    • 字符整數互轉,數據完整

      例子
      char c = 65 ; int i = c;
      // i=65

    • boolean的取值爲true/false,不可與其他類型轉換

  • 自動類型提升

    • 當兩個操作數有一個爲double,計算結果提示也升爲double
    • 如果操作數中沒有double,有一個爲float ,計算結果提升爲float
    • 如果操作數中沒有float ,有一個爲long ,計算結果提升爲long
    • 如果操作數中沒有long ,有一個爲int ,計算結果提升爲int
    • 如果操作數中沒有int ,均爲short或byte ,計算結果仍然提升爲int
    • 特殊:任何類型與String 相加實爲拼接,其結果自動提升爲String
  • 運算符

    • 算數運算符

      • 加,求和
      • 減、求差
      • 乘、求積
        / 除、求商
        % 模、求餘
      • 一元運算符(只有一個操作數)

        • ++ 遞增,變量值+1
        • – 遞減,變量 -1
    • 賦值運算符

      • =

        • 直接賦值
      • +=

        • 求和後賦值
      • -=

        • 求差後賦值
      • *=

        • 求積後賦值
      • /=

        • 求商後賦值
      • %=

        • 求餘後賦值
    • 關係運算符:兩個操作數進行比較

        • 大於
      • <

        • 小於
      • =

        • 大於等於
      • <=

        • 小於等於
      • ==

        • 等於
      • !=

        • 不等於
    • 邏輯運算符

      • &&

        • 與(並且)

          • 兩個操作數,同時爲真,結果爲真
      • ||

        • 或(或者)

          • 兩個操作數、一個爲真,結果爲真
      • |

        • 非(取反)

          • 意爲“不是‘,真即是假,假即是真
    • 三目運算符:將判斷後的結果賦值給變量

      • ? :

        • 語義

          布爾表達式?結果1:結果2

          • 描述

            當表達式結果爲真,獲得結果1
            當表達式結果爲假,獲得結果2

  • 表達式

    • 使用運算符連接的表量或字面值,並可以得到一個最終結果

      例如

Day04

控制檯錄入

  • 程序運行中,可在控制檯(終端)手動;錄入數據,再讓程序繼續運行

  • 導包語法:import包名.類名;//將外部class文件功能引入到自身文件中

  • 使用順序

    • 導入java.util.Scanner

      • 聲明Scanner類型的變量

        • 使用Scanner類對應的函數(區分類型)

          • nextInt(); //獲得整數
          • nextDouble();//獲得小數
          • next ();// 獲得字符串
          • .next()charAt(0);//獲得單個字符
          • 注:如果輸入了不匹配的數據,這會產生java.util.InputMismatchException

Day05

選擇分支結構

選擇結構:

  • 基本的if選擇結構

    • 語法

      if(布爾表達式){

      //代碼塊

      }

      後續代碼

    • 執行流程

      • 對布爾表達式進行判斷
      • 結果爲true ,則先執行代碼塊,再進執行後續代碼
      • 結果爲false ,則跳出代碼塊,直接執行後續代碼
  • if else 選擇結構

    • 語法

      if(布爾表達式){
      //代碼塊1
      }else{
      // 代碼塊2
      }

      後續代碼…

    • 執行流程

      • 對布爾表達式進行判斷
      • 結果爲true,則先執行代碼塊1,再退出整個結構,執行後續代碼
      • 結果爲false ,則先執行代碼塊2,再退出整個結構,執行後續代碼
  • 多重if 選擇結構

    • 語法

      if(布爾表達式子1){
      //代碼塊1

      }else if(布爾表達式2){
      //代碼塊2
      }else if (布爾表達式3){
      //代碼塊3
      }else{
      //代碼塊4
      }

    • 執行流程

      • 表達式1爲true,則執行代碼塊1,再退出整個結構
      • 表達式2爲true,則執行代碼塊2,再退出整個結構
      • 表達式3爲true,則執行代碼3,再退出整個結構
      • 以上均爲false ,則執行代碼塊4,其他均不再執行
      • 注意:相互排斥,有一個爲true,其他均不再執行。使用於區間判斷
  • 嵌套if 選擇結構

    • 語法

      if(外層表達式){
      if(內層表達式){
      //內層代碼塊1

      }else{
      //內層代碼塊2
      }

      }else {

        //外層代碼塊
      

      }

    • 執行流程

      • 當外層條件滿足時,再判斷內層條件
      • 注意:一個選擇結構中,可嵌套另一個選擇結構
      • 嵌套格式正確的情況下,支持任意組合
  • switch分支結構

    package demo;
    import java.util.Scanner;

    public class TestSwitch{
    public static void main(String[] args){
    Scanner input = new Scanner(System.in);
    System.out.println(“請輸入整數:”);
    int choice = input.nextInt();
    switch(choice){
    case 1: System.out.println(“北京考鴨”);
    case 2:System.out.println(“過橋米線”);
    case 3: System.out.println(“麻辣香鍋”);

    }

    }

    }

    • 語法

      switch(變量|表達式){
      case 值1:
      邏輯代碼1;
      case 值2:
      邏輯代碼2;
      case 值n:
      邏輯代碼n;
      default:
      未滿足時的邏輯代碼;

      }

    • 可判斷的類型

      byte 、short、int 、char、String(jdk7+)

    • 執行流程

      • 如果變量中的值等於值1,則執行邏輯代碼1
      • 如果變量中的值等於值2,則執行邏輯代碼2
      • 如果變量中的值等於值n,則執行邏輯代碼n
      • 如果變量中的值沒有匹配的case值,執行default中的邏輯代碼
      • 注意:所有case的取值不可相同
    • note

      • 當匹配的case被執行後,並不會自動退出整個結構,而繼續向下執行
      • break 關鍵字可以在匹配的case執行後,直接跳出整個結構
  • 局部變量

    • 概念:聲明在函數內部的變量,必須先賦值再使用。
    • 作用範圍:定義性開始到所在的代碼塊結束
    • 注意:多個變量,在重合的作用範圍內,不可出現重名(命名衝突)
    • 聲明在函數內部的變量,必須先賦值再使用
  • 選擇結構的概念:根據已知條件進行邏輯判斷。滿足條件後執行相應操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章