java基礎:
1. 8大基本類型
byte,char,short,int,long,float,double,boolean
類型 長度 範圍
byte(字節) 8 128 - 127
shot(短整型) 16 -32768 - 32768
int(整型) 32 -2147483648 - 2147483648
long(長整型) 64 -9233372036854477808 - 9233372036854477808
float(浮點型) 32 -2^128 ~ +2^128
double(雙精度) 64 -2^1024 ~ +2^1024
char(字符型) 16 -128~127
boolean(布爾型) 1 true/false
2. 常量
java常量:指在首次賦值之後該值不能再發生改變
例子:
/**
* double 類型常量
*/
private static final double dou = 120.00;
/**
* double 類型常量
*/
private static final boolean bol = true;
/**
* String 類型常量
*/
private static final String hellow = "hellow";
三個例子說明常量如果賦值一次之後再次賦值會發生編譯錯誤
3.企業級命名規範和必要註釋
注意點一:在開發過程中命名規則必須按照團隊的開發命名走注意統一
注意點二:開發中不可使用(shangpin,dianqi,productdingdan)這樣的變量或者類名出現(拼音或者拼音加英語)
注意點三:在不確定命名規則時按照阿里命名規則走絕對沒有錯
4.Java運算符
一元運算符
算數運算符
移位運算符
關係運算符
5.循環 判斷語句(if企業級項目一般有很多地方使用到)
boolean isBoolean = true;
for (int i = 0; i < 5; i++) {
if (isBoolean){
System.out.println(isBoolean);
}else {
System.out.println(isBoolean);
}
}
6.java虛擬機的內存劃分
java程序運行過程:
首先Java源代碼文件(.java後綴)會被Java編譯器編譯爲字節碼文件(.class後綴),然後由JVM中的類加載器加載各個類的字節碼文件,加載完畢之後,交由JVM執行引擎執行。在整個程序執行過程中,JVM會用一段空間來存儲程序執行期間需要用到的數據和相關信息,這段空間一般被稱作爲Runtime Data Area(運行時數據區),也就是我們常說的JVM內存。
因此,在Java中我們常常說到的內存管理就是針對這段空間進行管理(如何分配和回收內存空間)。
java虛擬機管理的內存包括幾個運行時數據內存:堆、方法區、虛擬機棧、本地方法棧、程序計數器,其中方法區和堆是由線程共享的數據區,其他幾個都是線程隔離的數據區。
7.面向對象
謹記一個原則:萬物皆對象
繼承,封裝,多態,抽象
8.String類、static關鍵字、Arrays類、Math類
8.1.String類
概述 :java中所有的字符串文字都可以被看做是實現此類的實例
- 字符串不變: 字符串的值在創建後不能被更改
- String對象是不可變的,所以可以被共享
- "abc"等效於char[] data = {‘a’,‘aa’,aaa’}
常用方法:
判斷功能的方法
public boolean equals (Object anObject): 將次字符串與指定對象比較
public boolean equalsIgnoreCase(String anotherString)忽略大小寫
獲取功能的方法
public int length ():返回此字符串的長度
public String concat(String str): 將指定的字符串拼接到字符串的末尾
public char charAt(int index): 返回指定索引處的char值
public int indexOf(String str): 返回指定字符串第一次出現在該字符串內的索引
public String substring(int beginIndex): 返回子字符串,從beginindex開始截取字符串到字符串末尾
public String substring (int beginIndex,int endIndex):從beginindex到endIndex截取字符串,左閉右開
轉換功能的方法
public char[] toCharArray (): 將此字符串轉化爲新的字符數組
public byte[] getBytes ():使用默認字符集將String編碼轉換爲新的字節數組
public String replace(CharSequence target, CharSequence replacement): 將與target匹配的字符串用replacement字符串替換
分割功能的方法
public String[] split(String regex)
: 將此字符串按照給定的regex拆分爲字符串數組
8.2.Ststic關鍵字
用來修飾成員變量和成員方法,被修飾的成員屬於 類(在實際的項目開發中大多數都會有一個靜態常量類 統一開發)
靜態方法調用的注意事項:
- 靜態方法可以直接訪問類變量和靜態方法
- 靜態方法不能直接訪問普通成員變量和成員方法
- 靜態方法,不能使用this關鍵字
調用格式
被static修飾的成員可以並且建議通過類名直接訪問
static
修飾的內容:
- 是隨着類的加載而加載的,且只加載一次。
- 存儲於一塊固定的內存區域(靜態區),所以,可以直接被類名調用。
- 它優先於對象存在,所以,可以被所有對象共享。
靜態代碼塊
定義在成員位置,使用static修飾的代碼塊{},隨着類的加載而執行,且執行一次,優先於main方法和構造方法的執行。
作用:給類變量進行初始化賦值
8.3.Arrays 類
概述
java.util.Arrays此類包含用來操作數組的各種方法,所有方法均爲靜態方法。
操作數組的方法
public static String toString(int[] a): 返回指定數組內容的字符串表示形式
public static void sort(int[] a): 對指定的int 型數組按數字升序排序 案例:倒序打印
8.4 Math類
概述
基本數學運算,也是靜態方法,不用創建對象
基本運算方法
public static double abs(double a): 返回double的絕對值
public static double ceil(double a): 返回大於等於參數的最小的整數
public static double floor(double a): 返回小於等於參數最大的整數
public static long round(double a): 返回最接近參數的long(相當於四捨五入)
double match=-2.22;
System.out.println(Math.abs(match));
System.out.println(Math.ceil(match));
System.out.println(Math.floor(match));
System.out.println(Math.round(match));
9.super和this
- super: 代表父類的存儲空間標識(可以理解爲父類的引用)
- this: 代表當前對象的引用(誰調用就代表誰)
10.final關鍵字
概述
爲了避免這種隨意改寫繼承API中提供的類的內容的情況,Java提供了final
關鍵字,用於修飾不可改變內容。
- final: 不可改變。可以用於修飾類、方法和變量。
- 類:被修飾的類,不能被繼承。
- 方法:被修飾的方法,不能被重寫。
- 變量:被修飾的變量,不能被重新賦值。
修飾類:
查詢API發現像 public final class String
、public final class Math
、public final class Scanner
等,很多我們學習過的類,都是被final修飾的,目的就是供我們使用,而不讓我們所以改變其內容
修飾方法:
重寫被 final
修飾的方法,編譯時就會報錯
修飾變量
-
局部變量——基本類型 被final修飾後,只能賦值一次,不能再更改
-
局部變量——引用類型 只能指向一個對象,地址不能再更改。但是不影響對象內部的成員變量值的修改
-
成員變量 涉及到初始化的問題
11.權限修飾符
本節完畢 下節更新java基礎加強
部分參考:https://blog.csdn.net/wjl31802/article/details/86510585#2_6_7