1,軟件:一系列按照特定順序組織的數據和指令的集合。java
軟件 = 指令+數據數組
2,軟件開發的過程:安全
1.明確需求:就是肯定要作什麼東西; 好比說作個電子商務網站;jvm
2.肯定怎麼作;函數
3.具體編碼;工具
4.測試;開發工具
專業術語:測試
明確業務需求》整理邏輯》完成項目》測試》上線》維護+二次開發網站
3,人機交互的方式:編碼
4,Java語言的平臺介紹:
Java5.0版本後,改名爲 : JAVAEE JAVASE JAVAME
5,Java語言的特色:
6,Java語言是如何實現跨平臺的?(「一次編寫,到處運行」)
JAVA 能夠實現可移植性的緣由,主要在操做系統上(WINDOWS、Linux、MAC X) 植入 JVM(Java 虛擬機),JAVA 程序就具備可移植性。
7,JDK,JRE,JVM 的做用及關係
JVM (Java Virtual Machine):
是指Java虛擬機,它是整個java實現跨平臺的最核心的部分,全部的java程序 會首先被編譯爲.class的類文件,這種類文件能夠在虛擬機上執行;
JRE (java runtime environment):
是指java運行時環境,光有JVM還不能完成class的執行,由於在解釋class的 時候 JVM須要調用解釋所須要的類庫lib,而jvm和 lib和起來就稱爲jre。
JDK (java development kit JDK):
是指java開發工具包,JDK包含JRE,而JRE包含JVM。
總的來講JDK是用於java程序的開發,而jre則是隻能運行class而沒有編譯的功 能。(JDK -----> JRE -----> JVM)
8,環境變量配置
方法一:
在系統變量path變量值後英文分號處添加jdk工具包路徑,
如C:\Program Files\Java\jdk1.8.0_172\bin
方法二:
在系統變量下新建系統變量,如:
變量名:JAVA_HOME
變量值:C:\Program Files\Java\jdk1.8.0_172\bin
以後在path變量值末尾分號處加入%JAVA_HOME%;
9,Java關鍵字特色:
關鍵字所有都是小寫;關鍵字的用法和寫法都是固定的。
10,標識符命名規則:
a,能夠由大小寫字母、數字、下劃線(_)、美圓符號($)組成
b,數字不能開頭
c,關鍵字不能使用
d,嚴格區分大小寫
11,Java中的註釋寫法:
單行註釋: // 被註釋的內容,直到這一行結束
多行註釋: /* 註釋文字 */
文檔註釋: /** 註釋文字 */ (可被javadoc工具提取出來,生成一個幫助文檔)
12,常量的命名規則:
必須由大寫字母組成,若是由多個單詞則單詞之間用下劃線「_」分割;
常量定義語法格式:
final 常量類型 常量標識符 = 常量值 ;
例如:final int WEEK=7;
13,Java中的基本數據類型:
整數型:
byte:一個字節;-128 ~ 127; 字節 8bit
short:兩個字節:-2^15 ~ 2^15-1; 短整型 16bit
int:四個字節:-2^31 ~ 2^31-1; 整型 32bit
long:八個字節:-2^63 ~ 2^63-1; 長整型 64bit
在Java中,整數默認都是int型的;
浮點型:
float:四個字節; -2^127 ~ 2^127;
double:八個字節; -2^1023 ~ 2^1023;
在Java中,浮點數默認都是double型的;
字符型(char):
兩個字節; 0 ~65535;
必須使用英文的單引號,並且只能修飾一個字符
布爾型(boolean):
true false;
14,變量的使用注意事項:
1,變量都有使用範圍:變量的使用範圍在一對{ }中間;
2,變量使用前,都要賦值;
3,給變量賦值,須要和變量的數據類型一致
15,Java數據類型轉換:
自動類型轉換(隱式類型轉換):
將取值範圍小的類型的數據,往取值範圍大的類型的變量中放,能夠直接放進 去,不會損失精度。
強制類型轉換(顯式類型轉換):
將取值範圍大的類型的數據,往取值範圍小的類型的變量中放,有可能放不進 去,會出現精度損失
若是必須往裏面放,就須要使用一種方法:
小的範圍的數據類型 變量名=(小的範圍的數據類型)變量名;
注意點:
Java中整數默認都是int的:
要聲明一個long類型的常量,須要在數字後面加上字母:L(大小寫均可以)
Java中浮點數默認都是double的:
要聲明一個float類型的常量,須要在數字後面加上字母:F(大小寫均可以)
16,三元運算符:
變量名 = 布爾表達式 ? 表達式一 : 表達式二
17,獲取輸入信息:
Import java.util.Scanner;
Scanner scanner=new Scanner(System.in);
int a=scanner.nextInt();
方法 功能
.next() 讀取一個字符串,字符串遇到空格就終止
.nextByte() 讀取byte類型的整數
.nextShort() 讀取short類型的整數
.nextInt() 讀取int類型的整數
.nextLong() 讀取long類型的整數
.nextFloat() 讀取float類型的整數
.nextDouble() 讀取double類型的整數
18,Java中程序流程的種類
順序流程:是程序的默認流程,不須要什麼控制,只要寫了,就會按照書寫代 碼順序執行;
選擇流程:須要書寫一些控制語句,主要有兩種:判斷語句,選擇語句;
重複流程:須要書寫循環控制語句。
重複流程關鍵字:
break:結束當前所在語句,用於switch和循環語句中;在嵌套循環中,默認結 束離它最近的這個循環。
continue:表示結束本次循環,繼續下一次循環;不會影響循環次數;
19,函數重載的概念
概念:在同一個類中,能夠定義多個名稱相同、參數列表不一樣的函數,這種情 況就叫作函數的重載。函數的重載,只和函數名以及參數列表有關係,和函數 的返回值類型無關。
20,數組的格式:
第一種:
數據類型[] 數組名 = new數據類型[數組的容量];
數據類型 數組名[] = new數據類型[數組的容量];
第二種:
數據類型[] 數組名 = new 數據類型[]{元素1,元素2,……};
簡寫形式:
數據類型[] 數組名 = {元素1,元素2,……};
常見異常:
ArrayIndexOutOfBoundsException(數組下標越界異常)
NullPointerException(空指針異常)
21,面向過程和麪向對象的區別
一、關注點不一樣:
面向過程:關心的是事件中的每一步功能怎麼作;
面向對象:關心的是事件中的每一步功能有沒有什麼對象已經實現好了,而後直接 拿來使用
二、效率不一樣:
面向過程:由於本身要參與每一步的實現,因此效率比較慢;
面向對象:由於大多數都是調用別人已經實現好的功能,因此效率比較高
三、開發質量:
面向過程:由於是本身一步步實現的,大多數狀況會有地方會出問題;
面向對象:由於大多數都是調用別人寫好的功能,而這些功能通常都通過大量 的驗證,質量有保證
四、使用範圍不一樣:
面向過程:適合解決需求簡單的問題;
面向對象:更適合解決複雜的需求;
注意點:面向對象是基於面向過程的