這是我的一個(gè)高中同學(xué)在傳志培訓(xùn)后發(fā)給我的學(xué)習(xí)視頻,包含基礎(chǔ)和提升兩個(gè)階段。此為基礎(chǔ)篇。因?yàn)槭浅榭盏臅r(shí)候看的,所有進(jìn)度可能會(huì)有點(diǎn)慢……
基礎(chǔ)篇視頻鏈接:鏈接:http://pan.baidu.com/s/1i5839T7 密碼:bimd
提升篇視頻鏈接:鏈接:http://pan.baidu.com/s/1boG7hXt 密碼:azlh
平時(shí)的練習(xí)代碼存放在github倉庫中:https://github.com/956159241/JavaBasicStudyNotesFromItcase
使用工具:eclipse neon.3
第一章 JAVA概述
1.1 Java語言的特點(diǎn)
重點(diǎn)有兩個(gè)開源,跨平臺(tái)。



1.2 JRE 與JDK
JRE(Java Runtime Environment Java運(yùn)行環(huán)境)
JDK(Java Development Kit Java開發(fā)工具包)
簡單而言:使用JDK開發(fā)完成的java程序,交給JRE去運(yùn)行。
1.3 JDK,JRE,JVM的作用及關(guān)系(掌握)
作用
JVM:保證Java語言跨平臺(tái)
JRE:Java程序的運(yùn)行環(huán)境
JDK:Java程序的開發(fā)環(huán)境
關(guān)系
JDK:JRE+工具
JRE:JVM+類庫
相關(guān)連接:
JDK的安裝與配置
1.4 第一個(gè)小程序

奇怪,我在創(chuàng)建的時(shí)候,為什么有個(gè)小問號(hào)呢?百度說是未進(jìn)行版本控制。

把項(xiàng)目上傳一下再看看……

通過上圖可以看到,還未上傳結(jié)束,可是問號(hào)已經(jīng)沒有了, 也就是說,提交一下,那個(gè)問號(hào)就沒有了。
第二章 Java基礎(chǔ)語法
2.1 關(guān)鍵字
2.1.1 特點(diǎn)
組成關(guān)鍵字的字母全部小寫
注意:goto和const作為保留字存在,目前并不使用


2.2 標(biāo)識(shí)符
2.2.1 組成規(guī)則
數(shù)字字母下劃線,不以數(shù)字開頭(還有其他可以使用,例如$等)。
注意:1.不能是關(guān)鍵字;2.區(qū)分大小寫。
2.2.2 命名規(guī)則
- 包(其實(shí)就是文件夾,用于解決相同類名問題)
全部小寫
單級(jí)包:小寫
舉例:zzh,com
多級(jí)包:小寫,并用.隔開
舉例:com.iotzzh,com.baidu - 類或者接口
一個(gè)單詞:首字母大寫
舉例:Student,Demo
多個(gè)單詞:每個(gè)單詞首字母大寫
舉例:HelloWorld,StudentName - 方法和變量
一個(gè)單詞:首字母小寫
舉例:name,main
多個(gè)單詞:從第二個(gè)單詞開始,每個(gè)單詞首字母大寫
舉例:studentAge,showAllNames() - 常量
全部大寫
一個(gè)單詞:大寫
舉例:PI
多個(gè)單詞:大寫,并用_隔開
舉例:STUDENT_MAX_AGE
2.2.2 注釋
- 單行注釋
格式: //注釋文字 - 多行注釋
格式: /* 注釋文字 */ - 文檔注釋
格式:/** 注釋文字 */
注意:初學(xué)者編寫程序可以養(yǎng)成習(xí)慣:先寫注釋再寫代碼。
2.3 數(shù)據(jù)類型


使用變量注意事項(xiàng):
- 作用域
變量定義在哪一級(jí)大括號(hào)中,哪個(gè)大括號(hào)的范圍就是這個(gè)變量的作用域。相同的作用域中不能定義兩個(gè)同名變量。 - 初始化值
沒有初始化值不能直接使用 - 在一行上建議只定義一個(gè)變量
可以定義多個(gè),但是不建議
注意事項(xiàng):
- boolean類型不能轉(zhuǎn)換為其他的數(shù)據(jù)類型
- 默認(rèn)轉(zhuǎn)換
byte,short,char—int—long—float+—double(byte,short,char相互之間補(bǔ)轉(zhuǎn)換,他們參與運(yùn)算首先轉(zhuǎn)換為int類型)
3.強(qiáng)制類型轉(zhuǎn)換
目標(biāo)類型 變量名=(目標(biāo)類型)(被轉(zhuǎn)換的數(shù)據(jù));
2.4 運(yùn)算符



面試題1:
1.請(qǐng)用最有效率的方式寫出計(jì)算2乘以8的結(jié)果?
用移位運(yùn)算 int a=2<<3;
2的二進(jìn)制是10 在32位存儲(chǔ)器里面是0000 0000 0000 0010
左移三位后變成 0000 0000 0001 0000 也就是16
2.請(qǐng)自己實(shí)現(xiàn)兩個(gè)整數(shù)變量的交換
//方式1:借用第三方變量
int c;c=a;a=b;b=c;
//方式2:使用位異或?qū)崿F(xiàn)
a=ab;b=ab;a=a^b;
//方式3:使用a和b的和相減
a=a+b;b=a-b;a=a-b;
//方式4:一句話搞定
b=(a+b)-(a=b);
2.5 三目運(yùn)算符
示例:z = (x>y)?x:y;//z變量存儲(chǔ)的就是兩個(gè)數(shù)的大數(shù)。
2.6 鍵盤錄入方式
- 導(dǎo)包(位置放到class定義的上面)
import java.util.Scanner; - 創(chuàng)建對(duì)象
Scanner sc = new Scanner(System.in); - 接收數(shù)據(jù)
int x = sc.nextInt();
2.7 流程控制語句
分類:
- 順序結(jié)構(gòu)
- 選擇結(jié)構(gòu)
- 循環(huán)結(jié)構(gòu)
關(guān)鍵字提醒:
if,else,switch,for,while,foreach,break,continue,return。
注意break和default
寫程序優(yōu)先考慮for循環(huán),再考慮while循環(huán),最后考慮do…while循環(huán)。
2.8 常用字符與ASCII代碼對(duì)照表

2.9 運(yùn)算符優(yōu)先級(jí)

注意:
1.byte,short在定義的時(shí)候,他們接收的其實(shí)是一個(gè)int類型的值。
這個(gè)是自己做了一個(gè)數(shù)據(jù)檢測的,如果不再它們的范圍內(nèi),就報(bào)錯(cuò)。
2.Java語言中的字符char可以存儲(chǔ)一個(gè)中文漢字嗎?為什么呢?
可以。因?yàn)閖ava語言中的字符占用兩個(gè)字節(jié)。
Java語言采用的是Unicode編碼。
2.10 方法
簡單的說:方法就是完成特定功能的代碼塊
修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名1,參數(shù)類型 參數(shù)名2…) {
函數(shù)體;
return 返回值;
}
2.11 數(shù)組
數(shù)組是存儲(chǔ)同一種數(shù)據(jù)類型多個(gè)元素的集合。也可以看成是一個(gè)容器。
??數(shù)組既可以存儲(chǔ)基本數(shù)據(jù)類型,也可以存儲(chǔ)引用數(shù)據(jù)類型。
數(shù)組的定義格式
格式1:數(shù)據(jù)類型[] 數(shù)組名;
格式2:數(shù)據(jù)類型 數(shù)組名[];
舉例:
int[] arr = new int[3];
