1. 程式人生 > 其它 >Java 基礎語法(一)

Java 基礎語法(一)

寫在前面
這是我的Java語法自學整理的第一部分。
這部分主要講了常用DOS命令、Java虛擬機器——JVM、JRE 和 JDK、HelloWorld入門程式、常量、變數和資料型別的相關基礎知識。


常用DOS命令

命令 操作符號
碟符切換命令 碟符名:
檢視當前資料夾 dir
進入資料夾命令 cd 資料夾名
退出資料夾命令 cd..
退出到磁碟根目錄 cd\
清屏 cls

Java虛擬機器——JVM

  • JVM(Java Virtual Machine ):Java虛擬機器,簡稱JVM,是執行所有Java程式的假想計算機,是Java程式的執行環境,是Java 最具吸引力的特性之一。我們編寫的Java程式碼,都執行在 JVM 之上。
  • 跨平臺:任何軟體的執行,都必須要執行在作業系統之上,而我們用Java編寫的軟體可以執行在任何的作業系統上,這個特性稱為Java語言的跨平臺特性。該特性是由JVM實現的,我們編寫的程式執行在JVM上,而JVM執行在作業系統上。
  • Java的虛擬機器本身不具備跨平臺功能的,每個作業系統下都有不同版本的虛擬機器。

JRE 和 JDK

  • JRE (Java Runtime Environment) :是Java程式的執行時環境,包含 JVM 和執行時所需要的 核心類庫 。
  • JDK (Java Development Kit):是Java程式開發工具包,包含 JRE 和開發人員使用的工具。
    我們想要執行一個已有的Java程式,那麼只需安裝 JRE 即可。
    我們想要開發一個全新的Java程式,那麼必須安裝 JDK

HelloWorld入門程式

開發環境已經搭建完畢,可以開發我們第一個Java程式了。
Java程式開發三步驟:編寫、編譯、執行 。

編寫Java源程式

  1. 新建文字檔案,完整的檔名修改為 HelloWorld.java ,其中檔名為 HelloWorld ,字尾名必須為 .java

  2. 用軟體開啟。

  3. 在檔案中鍵入文字並儲存,程式碼如下 :

    public class HelloWorld {
    	public static void main(String[] args) {
    			System.out.println("Hello World!");
    	}
    }    
    

    檔名和類的名字是一致的,注意大小寫。

編譯Java原始檔

在DOS命令列中,進入Java原始檔的目錄,使用 javac 命令進行編譯。
命令: javac Java原始檔名.字尾名

編譯成功後,命令列沒有任何提示。目錄下產生了一個新的檔案 HelloWorld.class ,該檔案就是編譯後的檔案,是Java的可執行檔案,稱為位元組碼檔案,有了位元組碼檔案,就可以執行程式了。

Java原始檔的編譯工具 javac.exe ,在JDK安裝目錄的bin目錄下。但是由於配置了環境變數,可以再任意目錄下使用。

執行Java程式

在DOS命令列中,進入Java原始檔的目錄,使用 java 命令進行執行。
命令: java 類名字

java HelloWord 不要寫 不要寫 不要寫 .class

編譯和執行區別

  • 編譯:是指將我們編寫的Java原始檔翻譯成JVM認識的class檔案,在這個過程中, javac 編譯器會檢查我們所寫的程式是否有錯誤,有錯誤就會提示出來,如果沒有錯誤就會編譯成功。
  • 執行:是指將 class檔案 交給JVM去執行,此時JVM就會去執行我們編寫的程式了。

添加註釋comment

註釋:就是對程式碼的解釋和說明。其目的是讓人們能夠更加輕鬆地瞭解程式碼。為程式碼添加註釋,是十分必須要的,它不影響程式的編譯和執行。
Java中有單行註釋和多行註釋

  • 單行註釋以 //開頭 換行結束
  • 多行註釋以 /*開頭 以*/結束

關鍵字keywords

關鍵字:是指在程式中,Java已經定義好的單詞,具有特殊含義。

  • HelloWorld案例中,出現的關鍵字有 public 、class 、static 、void 等,這些單詞已經被Java定義好,全部都是小寫字母,notepad++中顏色特殊。
  • 關鍵字比較多,不能死記硬背,學到哪裡記到哪裡即可。

識別符號

識別符號:是指在程式中,我們自己定義內容。比如類的名字、方法的名字和變數的名字等等,都是識別符號。

  • HelloWorld案例中,出現的識別符號有類名字 HelloWorld
  • 命名規則: 硬性要求
    • 識別符號可以包含 英文字母26個(區分大小寫) 、 0-9數字 、 $(美元符號) 和 _(下劃線)。
    • 識別符號不能以數字開頭。
    • 識別符號不能是關鍵字
  • 命名規範: 軟性建議
    類名規範:首字母大寫,後面每個單詞首字母大寫(大駝峰式)。
    方法名規範: 首字母小寫,後面每個單詞首字母大寫(小駝峰式)。
    變數名規範:全部小寫

常量

概述

常量:是指在Java程式中固定不變的資料。

分類

型別 含義 資料舉例
整數常量 所有的整數 0,1, 567, -9
小數常量 所有的小數 0.0, -0.1, 2.55
字元常量 單引號引起來,只能寫一個字元,必須有內容 'a' , ' ', '好'
字串常量 雙引號引起來,可以寫多個字元,也可以不寫 "A" ,"Hello" ,"你好" ,""
布林常量 只有兩個值(流程控制中使用) true , false
空常量 只有一個值(引用資料型別中使用) null

練習

需求:輸出各種型別的常量。

public class ConstantDemo {
	public static void main(String[] args){
		//輸出整數常量
		System.out.println(123);
		//輸出小數常量
		System.out.println(0.125);
		//輸出字元常量
		System.out.println('A');
		//輸出布林常量
		System.out.println(true);
		//輸出字串常量
		System.out.println("你好Java");
}  

變數和資料型別

變數概述

變數:常量是固定不變的資料,那麼在程式中可以變化的量稱為變數

Java中要求一個變數每次只能儲存一個數據,必須要明確儲存的資料型別。

資料型別

資料型別分類

Java的資料型別分為兩大類:

  • 基本資料型別:包括 整數 、浮點數 、字元 、布林 。
  • 引用資料型別:包括 類 、陣列 、介面 。

基本資料型別

四類八種基本資料型別:

資料型別 關鍵字 記憶體佔用 取值範圍
整型 int(預設) 4個位元組 -2的31次方~2的31次方-1
長整型 long 8個位元組 -2的63次方~2的63次方-1
短整型 short 2個位元組 -32768~32767
單精度浮點數 float 4個位元組 1.4013E-45~3.4028E+38
雙精度浮點數 double(預設) 8個位元組 4.9E-324~1.7977E+308
位元組型 byte 1個位元組 -128~127
字元型 char 2個位元組 0-65535
布林型別 boolean 1個位元組 true,false

Java中的預設型別:整數型別是 int 、浮點型別是 double

變數的定義

資料型別 變數名 = 資料值;

練習

定義所有基本資料型別的變數,程式碼如下:

public class Variable {
	public static void main(String[] args){
		//定義位元組型變數
		byte b = 100;
		System.out.println(b);
        //定義短整型變數
        short s = 1000;
        System.out.println(s);
        //定義整型變數
        int i = 123456;
        System.out.println(i);
        //定義長整型變數
        long l = 12345678900L;
        System.out.println(l);
        //定義單精度浮點型變數
        float f = 5.5F;
        System.out.println(f);
        //定義雙精度浮點型變數
        double d = 8.5;
        System.out.println(d);
        //定義布林型變數
        boolean bool = false;
        System.out.println(bool);
        //定義字元型變數
        char c = 'A';
        System.out.println(c);
	}
}

long型別:建議資料後加L表示。
float型別:建議資料後加F表示

注意事項

  • 變數名稱:在同一個大括號範圍內,變數的名字不可以相同。
  • 變數賦值:定義的變數,不賦值不能使用。

本文來自部落格園,作者:星空下的呢喃,轉載請註明原文連結:https://www.cnblogs.com/linanspace/p/15758219.html