java单引号转义_Java基础入门——Java语言基础(上)
本篇我們開始進入Java的學習,首先在學習如何編寫Java語言前要先了解Java程序的基本結構。
一、Java程序的基本結構
一個Java程序的基本結構大體可以分為包、類、main()主方法、標識符、關鍵字、語句和注釋等,如下:
package hello; // 定義包public class Structure { // 創建類static int num = 1; // 定義類的成員變量public static void main(String[] args) { // 定義主方法String str = "http://www.bjpowernode.com/video.html?zh95"; // 定義局部變量System.out.println(num); // 輸出成員變量的值System.out.println(str); // 輸出局部變量的值}}我們來逐一分析一下每一條語句,過多的概念我就不詳述了,只說最基本的。
第一條語句“package hello;”定義了Java程序中類所在的包是hello,hello是一個標識符,由程序員自己定義,package是關鍵字。注意:標識符和關鍵字區分大小寫。
第二條語句“public class Structure”用于創建一個名為Structure的類,類名由程序員自己定義,其中public及class是關鍵字,關于public和static的用法會在后續篇章中提到。
第三條語句“static int num = 1;”定義了類的成員變量,static和int都是關鍵字,而num是一個標識符,由程序員自己定義。
第四條語句“public static void main(String[] args)”是類的主方法,Java程序從這里開始執行,除了可以將“String[] args”改為“String args[]”外,不可改變本條語句的任何部分。
第五條語句“String str = "http://www.bjpowernode.com/video.html?zh95”是在主方法中定義了一個局部變量,String是一個類,用于創建字符串對象(說簡單點就是說,如果你想創建一條字符串,就使用String類),str是局部變量的名稱,為程序員自己定義的一個標識符,而后面引號中的網址是局部變量str的值,“=”為賦值運算符。
第六條語句“System.out.println(num);”是輸出語句,這是輸出語句的固定寫法,注意區分大小寫,輸出換行為println,不換行為print。
第七條語句同樣為輸出語句,執行將輸出str的值
二、標識符和關鍵字
那么說了這么多是不是覺得好復雜啊,標識符、關鍵字都是什么。其實標識符可以簡單理解為一個名字,用來標識類名、變量名、方法名、數組名、文件名的有效字符序列。
例如,定義一個變量i并賦值為100,那么我們可以寫出如下代碼: int i = 100;
這就是一個典型的賦值語句,其中int是定義一個整型數,i就是標識符,由程序員自己起名,但有一定的規則,簡單點來說就是由字母、數字、下劃線和美元符號組成,第一個字符不能為數字,并且區分大小寫,不能為關鍵字或保留字。
我們可以舉幾個例子看看,合法標識符如name、user、_u8080、tc_bvt等等,非法標識符如5work、7fix等等。
上面提到的關鍵字和保留字,是Java語言中已經被賦予特定意義的一組單詞,不可作為標識符使用,比如上面代碼中的int就是關鍵字,至于java的關鍵字有哪些我就不過多的描述了,畢竟網上有很多很詳細的介紹,我們還是主要從代碼入手。
三、基本數據類型
了解了上面的Java程序的基本結構后是不是對Java有一定的感覺了呢,那么編寫程序肯定要用到許許多多數據,那Java中的數據又是如何分類及編寫的呢?
在Java中有8種數據類型,其中6種是數值類型,另外兩種分別是字符類型和布爾類型,如下:
public class Type {/* 整數類型 */byte myByte = 45; // byte型變量,占一個字節,取值范圍-128~127short myShort = 100; // short型變量,也即短整型,占兩個字節,取值范圍-32768~32767int myInt = 450; // int型變量,也即整型,占四個字節,取值范圍-2147483648~2147483647long myLong = 45261636L; // long型變量,也即長整型,占八個字節,取值范圍-9223372036854775808~9223372036854775807/* 浮點類型 */float myFloat = 15.621F; // 單精度浮點型,占四個字節,結尾必須加'F'或'f',如果不加自動定義為double型變量,取值范圍1.4E-45~3.4028235E-38double myDouble = 15.621D; // 雙精度浮點型,占八個字節,結尾可以加'D'或'd',也可不加,取值范圍4.9E-324~1.7976931348623157E-308/* 字符類型 */ char myChar = 'a'; // 字符類型變量,用于存儲單個字符,占兩個字節,需用單引號括起來/* 布爾類型 */boolean myBoolean = true; // 布爾類型又稱邏輯類型,只有true和false兩個值,分別代表“真”和“假” }當我們要定義一個變量的時候,先判斷變量的數據類型,再從上方8種類型中選擇合適的類型使用即可,定義方法就如上方代碼,以“[數據類型] [變量名] = [值]”的形式即可,其中變量名需自起名,滿足上面提到的標識符的幾個條件。
在字符類型中還有一種特殊的字符,以反斜線“”開頭,后跟一個或多個字符,具有特定的含義,叫做轉義字符。
轉義字符一般多用于輸出,比如“n”回車換行,“t”移到下一制表位,如果想要輸出單引號、雙引號、下劃線等字符時,也需要用轉義字符進行輸出。
四、變量與常量
剛剛我們提到了變量,接下來就說一下什么是變量和常量。在程序執行過程中,其值不能改變的稱為常量,其值能改變的稱為變量。變量與常量的聲明都必須使用合法的標識符,所有變量與常量只有在聲明之后才能使用。下面舉一個聲明變量的例子:
int age; // 聲明int型變量 char c = 'J' // 聲明char型變量并賦值既然叫變量那肯定是能改變的,現在我們對變量進行一下改變試試:
public class Variable {public static void main(String[] args) {int num = 10; // 定義一個變量num,并賦給初值10System.out.println("num的初值為:"+num); // 輸出當前變量num的值為10num = 100; // 將100賦給numSystem.out.println("num現在的值為:"+num); // 輸出現在變量num的值為100}}上方是一段測試代碼,我們首先定義一個變量,起名為num,然后對它賦一個初值10,再對這個變量賦值為100,看兩次值的變化,運行結果如下所示:
由此可以看出變量是在運行過程中其值可以改變。
而常量在整個程序中只能被賦值一次,需通過final關鍵字進行限定,如 final double PI = 3.1415926; ,為定義一個常量,名為PI(圓周率),我們如果單獨定義一個變量是“double PI = 3.1415926;”,現在定義一個常量就是在double前加一個final關鍵字進行限定即可。
看到這里,是不是對Java的聲明及定義有一些了解了呢?也許在之前大家也都見到了有些變量前有static這個關鍵字,它有什么用呢?這里就要說的變量的有效范圍了。
變量的有效范圍是指程序代碼能夠訪問該變量的區域,若超出變量所在區域訪問變量則編譯時會出現錯誤。可分為“成員變量”和“局部變量”。
在類體中定義的變量被稱為成員變量,成員變量在整個類中都有效,分為靜態變量和實例變量兩種。
其中x是實例變量,y是靜態變量。如果成員變量的類型前面加上static,就被稱為靜態變量,靜態變量的有效范圍可以跨類,甚至可達到整個應用程序之內,也可用“類名.靜態變量”的方式在其它類中使用(具體會在今后的篇幅中出現,想了解的可先行查閱資料)。
而在類的方法體中定義的變量(即“{”與“}”之間的聲明變量)稱之為局部變量。只在當前代碼塊中有效,簡單點來說就是只在其所定義的大括號中有效。下面舉一個例子:
public class Val {static int times = 3; // 定義成員變量timespublic static void main(String[] args) {int times = 4; // 定義局部變量timesSystem.out.println("times的值為:" + times); // 將times輸出System.out.println("靜態變量times的值為:" + Val.times); // 輸出靜態變量}}輸出結果為:
從這段代碼可以看出,首先在main方法外定義了一個成員變量times,并且是一個靜態變量,而在main方法內又定義了一個局部變量times。這里有人就會問了,變量名不是不能相同嗎?注意,這里第一個times是成員變量,作用范圍是針對于整個類而言,而第二個times是局部變量,只在main方法內有效,所以兩個重名并不沖突。但如果我們直接輸出times,如第一個輸出,輸出結果為4,是局部變量起了作用,因為當局部變量與成員變量名字相同時,此時成員變量將被隱藏,即這個成員變量在此方法中暫時失效。如果我們想調用成員變量,需要使用“類名.靜態變量”調用,如第二個輸出,類名為Val,靜態變量名為times,用“Val.times”即可調用靜態變量的值為3。
五、代碼注釋
注釋可以提高程序的可讀性,注釋包含的文字不會對程序產生任何影響,在Java中,代碼注釋主要有以下幾種:
1. 單行注釋
“//”為單行注釋標記,從“//”開始到換行為止的所有內容均被注釋而被編譯器忽略。
// 這是一條單行注釋2. 多行注釋
“/* */”為多行注釋標記,符號“/*”與“*/”之間的所有內容均為注釋內容,可以換行。
/* 注釋內容1 注釋內容2 ...... *//* 注釋內容1 注釋內容2 ...... */在多行注釋中可以嵌套單行注釋,比如下面的用法是正確的:
/* 名稱:知乎 // 時間:2019-4-22 */但在多行注釋中不能嵌套多行注釋。
3. 文檔注釋
“/** */”為文檔注釋標記。符號“/**”與“*/”之間的內容均為文檔注釋內容。當文檔注釋出現在任何聲明之前時,會被Javadoc文檔工具讀取作為Javadoc文檔內容。格式與多行注釋相同。
1 /** 2 * name: Hello World 3 * time: 2018-1-20 4 * author: Adam 5 **/來源:博客園
原文鏈接:Java入門篇(二)--Java語言基礎(上) - JAdam
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java单引号转义_Java基础入门——Java语言基础(上)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: echarts formatter_牛X
- 下一篇: RTX5 | STM32H743+Cub