Java預習考點
1.可以手寫程序實現,輸出“hello World”
class HelloChinas{
public static void main(String[] args){
System.out.println("hello world");
}
}
/*
1.java程序編寫-編譯-運行的過程
編寫:我們將編寫的Java代碼保存在以“.java”結尾的源文件中
編譯:使用javac.exe命令編譯我們的java源文件。格式:javac 源文件名.java
運行:使用java.exe命令解釋運行我們的字節碼文件。格式:java 類名
2.在一個java源文件中可以聲明多個class,但是,只能最多有一個類聲明為publi的。而且要求聲明public的類的類名必須與與源文件名相同。
3.程序的入口是main()方法,且格式是固定的
4.println 不加ln輸出后不會換行
5.每一行執行語句都以";"結尾。
6.編譯的過程:編譯以后會生成一個或者多個字節碼文件。字節碼文件的文件名與java源文件中的類名相同
*/
注意:java嚴格區分大小寫
2.可以說出,設置path的目的是什么
path:windows系統執行命令時要搜尋的路徑
實現在任何一個文件目錄下都可以執行java命令
目的是為了在控制台的任何文件路徑下,都可以調用jdk指定目錄下的所有指令
3.可以說出JDK,jre和JVM的關系是什么
包含關系
JDK(java開發工具包)=JRE+開發工具集
JRE(java運行環境)=JVM+JAVA SE標准類庫
jvm是一個虛擬的計算機,具有指令集並且使用不同的存儲區域。負責執行指令管理數據,內存,寄存器。
對於不同平台有不同的虛擬機
只有某平台提供了對應的java虛擬機,java程序才可在此平台運行
jvm徹底屏蔽了底層運行平台的差異,實現了一次編譯到處運行
4.可以說出:程序中若只有一個public修飾的類,且此類含main方法。那么此類名與源文件名可否不一致
不可以,必須一致
-
每個編譯單元只能有一個public類,這表示,每個編譯單元都有一個單一的公共接口,用public表示
-
可以有多個類,但是只能有一個public的類,並且public的類名必須和文件名一致。
-
一個文件中可以只有非public類,如果只有一個非public類,此類可以和文件名不同
-
為什么一個java源文件中只能有一個public類
- 編譯器在編譯時,針對一個java源文件(編譯單元)只會接受一個public類,否則報錯
在java文件中是否可以沒有public類
- public類不是必須的,java文件中可以沒有public類。
為什么這個public的類的類名必須與文件名相同
- 是為了方便虛擬機在響應的路徑中找到響應的類所對應的字節碼文件
5.可以列舉Java的注釋方式有哪幾種,格式為何?
-
//單行注釋
-
/* 多行注釋 */
對所寫程序進行解釋說明,增強可讀性
調試代碼
-
/**
@author 指定java程序的作者
@version 指定源文件的版本
*/ 文檔注釋(java特有)
注釋內容可以被JDK提供的工具javadoc所解析,生成一套以網頁文件形式的該程序的說明文檔
6.能夠清楚地說明變量的使用步驟
1.變量聲明 ,必須先聲明才能使用
2.變量賦值
3.調用變量
注意1:變量都定義在其作用域內。只有在作用域內,它才是有 效的
注意2:同一個作用域內,不可以聲明兩個同名變量
class VariableTest{
public static void main (String[]args){
//變量的定義
int myAge = 12;
//變量的使用
System.out.println(myAge);
}
}
7.以下運算符都有哪些具體的符號,以及了解作用:
a.算數運算符
+正 -負 +加 -減 *乘 /除 %取模 ++自加 --自減
b.關系運算符
== 相等於 !=不等於 <小於 >大於 <=小於等於 >=大於等於
比較運算符的結果都是boolean型,ture or false
c.邏輯運算符
&邏輯與 |邏輯或 !邏輯非(相反值)
&&短路與 ||短路或 ^邏輯異或(相同為false不同為ture)
&與&& 相同點 運算結果一樣 符號左邊是true時,二者都會執行右邊的運算,反之&&不會執行右邊運算
|與|| 相同點 運算結果一樣 符號左邊是false時,二者都會執行右邊的運算,反之||不會執行右邊運算
d.賦值運算符
= 賦值運算符 支持連續賦值
+= -= *= /= %=
e.三元運算符
(條件表達式)?表達式1:表達式2:
條件為ture 運算后的結果是表達式1
條件是false 運算后的結果是表達式2
表達式1和2必須同種數據類型
8.能夠列舉的數據類型都有哪些
1.基本數據類型
a.數值型
整數類型 (byte1,short2,int4,long8) byte -128-127 long形變量必須以L結尾
浮點類型(float4,double8) float后加f
b.字符型(char) 聲明一個字符或轉義字符 直接使用unicode值來表示字符型常量
String類型變量的使用
屬於引用數據類型,翻譯為字符串
聲明字符串類型變量時,使用一對""
String可以和八種基本數據類型變量做運算,且運算只能是連接運算,運算結果也是String類型
c.布爾型(boolean) true false
2.引用數據類型
a.類(class)
b.接口(interface)
c.數組([])
9.能夠舉例流程控制結構都有哪些
-
順序結構
程序從上到下逐行執行,中間沒有任何判斷和跳轉
-
分支結構
根據條件選擇性的執行某段代碼
有if...else和switch-case兩種分支語句
-
循環結構
根據循環條件,重復性的執行某段代碼。
有whlie,do,,,whlie,for三種循環語句
注意:JDK1.5提供了foreach循環,方便的遍歷集合,數組元素。
Java預習知識
常用Dos命令
1.dir: 列出當前目錄下的文件以及文件夾
2.md: 創建目錄
3.rd: 刪除目錄 必須為空目錄
4.cd: 進入指定目錄
5.cd.. 退回到上一級目錄
6.cd\ 退回到跟目錄
7.del 刪除文件 *.txt 目錄下所有txt刪除
8.exit: 退出Dos命令行
9.echo :創建並寫入文件 //echo 哈哈>1.doc
java語言特性
1.面向對象
兩個概念:類,對象
三大特性:封裝、繼承、動態
2.健壯性
吸收了C/C++語言的優點,但是去掉了影響程序健壯性的部分,比如指針,內存的申請和釋放等,提供了一個相對安全的內存管理和訪問機制
3.跨平台性
jvm徹底屏蔽了底層運行平台的差異,實現了一次編譯到處運行
關鍵字與保留字
關鍵字(keyword)的定義和特點
定義:被java語言賦予了特殊含義,用做專門用途的字符串(單詞)
特點:關鍵字中所有字母都為小寫
保留字(reserved word)
定義:現有java版本尚未使用,但以后版本可能會作為關鍵字使用。自己命名標識符要避免使用這些保留字
goto const
標識符(ldentifier)
定義:java對各種變量,方法和類等要素命名時使用的字符序列稱為標識符
技巧:凡是可以自己起名字的地方都叫標識符
定義合法標識符規則:
- 由26個英文字母大小寫,0-9,_或$組成
- 數字不可以開頭
- 不可以使用關鍵字或者保留字,但能包含關鍵字和保留字
- JAVA嚴格區分大小寫,長度無限制
- 標識符不能包含空格
java命名規范:
- 包名:多單詞組成時所有字母小寫:xxxyyyzzz
- 類名,接口名:多單詞組成時,所有單詞的首字母大寫:XxxYyyZzz
- 變量名,方法名:多單詞組成時,第一個字母首字母小寫,第二個單詞開始首字母大寫:xxxYyyZzz
- 常量名:所有字母都大寫。多單詞時每個單詞用下划線鏈接:XXX_YYY_ZZZ
注意:1.在起名字時,為了提高閱讀性,要盡量有意義,“見名知意”。
注意2:java采用Unicode字符集,因此標識符也可以使用漢字聲明,但是不建議
基本數據類型之間的運算規則:
前提:只討論前七種基本數據類型變量間的運算。不包含boolean類型的
1.自動類型提升:
結論:當容量小的數據類型的變量與容量大的數據類型的變量做運算時,結果自動提升為容量大的數據類型。
byte ,char,short-->int--> long--> float--> doble
特別地:當byte,char,short三種類型的變量做運算時,結果為int型
2.強制類型轉換
自動類型提升運算的逆運算
1.需要使用強轉符:()
2.強制類型轉化,可能會導致精度損失
class VariableTest3{
public static void main(String[]args){
double d1 = 12.3;
int i1 = (int)d1;//截斷操作,不會四舍五入
System.out.println(i1);
}
}
說明:此時的容量大小指的是,表示數的范圍的大小。比如float容量要比long的容量大