Day01
1、獨立編寫Hello World程序。
public class Test{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
2、JDK,JRE,JVM分別是什麼?
(1)作用
JVM:保證Java語言跨平臺
JRE:Java程序的運行環境
JDK:Java程序的開發環境
(2)關係
JDK:JRE+工具
JRE:JVM+類庫
3、Java語言是跨平臺的嗎?JVM是跨平臺的嗎?
Java語言是跨平臺的,JVM不跨平臺,每種平臺都有JVM。
4、環境變量path和classpath的區別?
(1)path指示java命令的路徑,像javac、java、javaw等
(2)classpath是javac編譯器的一個環境變量,它的作用與import、package關鍵字有關,當你寫下improt java.util.*時,編譯器面對import關鍵字時,就知道你要引入java.util這個package中的類;但是編譯器如何知道你把這個package放在哪裏了呢?所以你首先得告訴編譯器這個package的所在位置;如何告訴它呢?就是設置CLASSPATH啦 :) 如果java.util這個package在c:\jdk\ 目錄下,你得把c:\jdk\這個路徑設置到CLASSPATH中去!當編譯器面對import java.util.*這個語句時,它先會查找CLASSPATH所指定的目錄,並檢視子目錄java\util是否存在,然後找出名稱吻合的已編譯文件(.class文件)。如果沒有找到就會報錯!
5、什麼是註釋?註釋分爲幾種?註釋有什麼作用?
(1)就是對程序進行解釋說明的文字
(2)分類:
A:單行註釋 //
B:多行註釋 /**/
C:文檔註釋(後面講) /** */
(3)註釋的作用
A:解釋說明程序,提高了代碼的閱讀性。
B:可以幫助我們調試程序。
6、什麼是關鍵字?有什麼特點?
(1)被Java語言賦予特定含義的單詞;
(2)特點爲全部小寫。
7、什麼是標識符?由哪些部分組成?常見的命名規則有哪些?
(1)就是給類,接口,方法,變量等起名字的字符序列。
(2)組成規則:
A:英文大小寫字母
B:數字
C:$和_
(3)常見的命名規則(見名知意)
A:包 全部小寫
單級包:小寫 舉例:liuyi,com
多級包:小寫,並用.隔開 舉例:cn.itcast,com.baidu
B:類或者接口
一個單詞:首字母大寫 舉例:Student,Demo
多個單詞:每個單詞首字母大寫 舉例:HelloWorld,StudentName
C:方法或者變量
一個單詞:首字母小寫 舉例:name,main
多個單詞:從第二個單詞開始,每個單詞首字母大寫 舉例:studentAge,showAllNames()
D:常量 全部大寫
一個單詞:大寫 舉例:PI
多個單詞:大寫,並用_隔開 舉例:STUDENT_MAX_AGE
8、什麼是常量?常量的分類?字面值常量表現形式有哪些?
(1)在程序執行的過程中,其值不發生改變的量
(2)分類:
A:字面值常量
B:自定義常量(後面講)
(3)字面值常量
A:字符串常量 "hello"
B:整數常量 12,23
C:小數常量 12.345
D:字符常量 'a','A','0'
E:布爾常量 true,false
F:空常量 null(後面講)
(4)在Java中針對整數常量提供了四種表現形式
A:二進制 由0,1組成。以0b開頭。
B:八進制 由0,1,...7組成。以0開頭。
C:十進制 由0,1,...9組成。整數默認是十進制。
D:十六進制 由0,1,...9,a,b,c,d,e,f(大小寫均可)組成。以0x開頭。
9、計算出十進制46對應的二進制,八進制,十六進制的值。
二進制:101110
八進制:56
十六進制:2E
10、什麼是變量?變量的定義格式?要使用變量需要注意什麼?
(1)在程序的執行過程中,其值在某個範圍內可以發生改變的量
(2)變量的定義格式:
A:數據類型 變量名 = 初始化值;
B:數據類型 變量名;
變量名 = 初始化值;
11、Java中的數據類型分幾類?基本數據類型有哪些?
(1)分類:
A:基本數據類型:4類8種
B:引用數據類型:類,接口,數組。
(2)基本數據類型
A:整數 佔用字節數
byte 1
short 2
int 4
long 8
B:浮點數
float 4
double 8
C:字符
char 2
D:布爾
boolean 1
注意:
整數默認是int類型。浮點數默認是double。
長整數要加L或者l。單精度的浮點數要加F或者f。
12、數據類型轉換:
隱式轉換:
強制轉換:
第一題:
byte b1=3,b2=4,b;
b=b1+b2;
b=3+4;
哪句是編譯失敗的呢?爲什麼呢?
b=b1+b2;編譯失敗。因爲b1+b2結果爲int,不是byte。
第二題:
byte by = 130;
有沒有問題?有問題如何解決?結果是多少呢?
錯誤,byte 範圍是 -128到127( -2的7次方到2的7次方-1)