Java基礎學習(一):包,主類,數據類型及轉換

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可以更換)進制的字符串
	}
}

詳情請參考:鏈接

“不積硅步,無以至千里”

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