Java基礎學習(一):包,主類,數據類型及轉換
一、Java包
1、定義:Java中,類文件不止一個會被使用,所以,Java代碼以包管理。
2、關鍵字:package
3、簡單示例:
package firstpack;
4、命名規則:一般爲保存路徑。
5、一般通過import來調用。
二、類的成員變量和局部變量
先明確概念:類 = 屬性 + 方法
,將類實例化,就是對象。
1、定義:①類的成員變量:類的屬性。 ②方法的局部變量:方法中聲明的變量,屬性等。
2、作用域:①類的成員變量:類中任何地方都可以用。②方法的局部變量:只有當前方法可以訪問。
3、訪問修飾詞:
公開訪問權限 | 私有訪問權限 | 繼承訪問權限 |
---|---|---|
public | private | protected |
public標識該類或者成員變量、成員函數對其他所有類文件都是公開的,其它類文件都可以直接調用 | private標識該成員變量、成員函數只可以在自己的類文件內使用 | 繼承是一個派生類的概念,父類中的protected成員允許被子類訪問(後面會做介紹) |
4、簡單示例:
package firstpack;//這是一個包
public class great {
public static String a = "a1是一個全局變量";
//可以被其他類文件調用
private static String b = "b1是一個全局變量";
//只可以在此類文件中調用
public static void way1() {
String a2 = "我是方法裏的屬性";//方法裏的局部變量
System.out.println("這是一個方法," + a2);
}//這是一個方法.
public static void main(String[] args) {//void就是空,在方法申明的時候表示該方法沒有返回值
String a3 = "我 a3 是主方法裏的變量!";
System.out.println("這是一個主方法," + a3);
way1();//調用方法
}//這是一個主方法
}
——————————————————————————————————————
輸出:這是一個主方法,我 a3 是主方法裏的變量!
這是一個方法我是方法裏的屬性
三、基本數據類型
1、整數類型:byte/short/int/long + 變量名 ;
性質 | 最大值 | 最小值 | 默認值 | 所佔內存 |
---|---|---|---|---|
byte | 127(2^7-1) | -128(-2^7) | 0 | 佔內存8位,有符號,並以二進制補碼錶示整數,佔1字節內存(只有int的四分之一) |
short | 32767(2^15-1) | -32768(-2^15) | 0 | 佔內存16位,有符號,並以二進制補碼錶示整數,佔2字節內存(只有int的二分之一) |
int | 2147483647(2^31-1) | -2147483647(-2^31) | 0 | 佔內存32位,有符號,並以二進制補碼錶示整數,佔4字節內存 |
long | 2^63-1 | -2^63 | 0L | 佔內存64位,有符號,並以二進制補碼錶示整數,佔8字節內存.、,long類型需要在數字結尾加上L(一般爲大寫) |
2、浮點類型:float/double + 變量名 ;
,可用e來表示科學技術法,如32.24e-6
性質 | 表示 | 默認值 | 所佔內存 |
---|---|---|---|
float | float小數後必須加D或f,不加默認double類型 | 0.0F | 佔內存32位,4字節 |
double | 可加D或d,也可不加 | 0.0D | 佔內存64位,8字節 |
3、字符類型:char + 變量名 ;
- char用來存儲任何單一的16位Unicode字符,char類型可以存儲任何字符。但數量只能爲一個。
- 使用
‘’
表示一個字符。 - 最小值是
\u0000(即爲0)
- 最大值爲
\uffff(即爲65535)
轉義符 | 說明 |
---|---|
\n | 換行符號 |
\r | 回車 |
\t | 製表符 |
\f | 換頁 |
’ | 單引號 |
" | 雙引號 |
\ | 反斜線 |
\ddd | 符合該正則表達式序列的是一個以八進制方式來表達的字符 |
\uxxxx | 符合該正則表達式序列的是一個以十六進制方式來表達的Unicode字符 |
4、布爾類型:boolean + is變量名 ;
一般變量不是false就是true,這裏的is是好辨別,使語義更清晰。
5、應用對象類型:(後面介紹)
6、特殊值:null
意爲“等於零的”,“無價值的”,他表示一個變量沒有任何值。null既不是對象,也不是一種基本數據類型,它是一種特殊值,基本類型不準賦值,但包裝類型可以。
7、包裝類:
Byte | Short | Integer | Long |
---|---|---|---|
Byte a = | Short a = | Integer a = | Long a = |
public class first {
public static void main(String[] args) {
int a = 100;
Integer A = 100;//包裝類定義
System.out.println(a +"變形後"+ A.floatValue());
//包裝類引用屬性有很多,方法是通過 . 來引用這些方法
}
}
四、數據類型之間的轉化
1、自動轉換:數據運算必須爲同一種數據類型,Java默認降低精度轉化成高精度。
2、強制轉化: 變量 =(強制轉化類型)高精度變量值
- 有缺點,容易導致精度丟失,或者可能直接截斷。
3、進制轉化:
public class first {
public static void main(String[] args) {
int x = 100;
System.out.println(Integer.toHexString(x));///10進制轉換成16進制的字符串
System.out.println(Integer.toOctalString(x));///10進制轉換成8進制的字符串
System.out.println(Integer.toBinaryString(x));///10進制轉換成2進制的字符串
System.out.println(Integer.toString(123456,7));///10進制轉換成7(7可以更換)進制的字符串
}
}
詳情請參考:鏈接
“不積硅步,無以至千里”