Java介紹 是一門面向對象的程式設計的編程語言,在 年, 公司發佈了 這門編程語言,有咖啡的名稱,是當時靈機一動的想法。在 年的時候被 公司收購了,目前 的版本是 了。 那麼什麼是 呢?學習 必須要有 ,那麼我們現在去下載吧!根據下方給的自己就可以找到了。 下載地址 下載jdk,和eclipse就 ...
Java介紹
Java
是一門面向對象的程式設計的編程語言,在1995
年,sun
公司發佈了Java
這門編程語言,有咖啡的名稱,是當時靈機一動的想法。在2010
年的時候被Oracle
公司收購了,目前jdk
的版本是java10
了。
那麼什麼是jdk
呢?學習java
必須要有jdk
,那麼我們現在去下載吧!根據下方給的自己就可以找到了。
下載地址
下載jdk,和eclipse就比較簡單了,提供JDK 9 地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html
提供JDK 8 地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
在Java
這門語言是世界上很熱門的一種,在java
中有它自己的一種重要工具,為jvm
為java
的虛擬機。java
實現平臺的無關性就是由它jvm
的幫忙,這個工具是實現在各種平臺上運行的關鍵。
java
的編程過程是由最初的源文件(xxx.java
),源文件在到編譯器里去執行,然後產生出位元組碼文件(xxx.class
),位元組碼文件在到解釋器中去執行,就可以在顯示器上展示效果了。其中解釋器是由java
中的虛擬機去執行完成的,將位元組碼文件解釋到具體的平臺上即可,實現一次編譯,到處運行的結果。
在java
中有jre
的工具,為java
運行時環境,包含java
虛擬機,和java
核心類庫,支持的一些文件等。
如果要運行我們的
java
程式,就要下載jre
,在java
中,我們要重點瞭解,學習,並且掌握jdk,jre,jvm
;如果你下載了jdk
,那麼你就有了jre,jvm
,因為下載的jdk
包含了jre,jvm
。記得你們老師也叫你們下載了jdk
,那麼它就有了jre,jvm
,這一點你們放心。
Java SE Java
標準版
Java EE Java
企業版
Java ME Java
微型版
講述JDK的配置
JDK
包安裝完成後,需要配置環境變數。點擊桌面上的“我的電腦”或者“此電腦”
,選擇“屬性”
,接著選擇“高級”,點擊其中的“環境變數”彈出“環境變數”
對話框,其中包含“用戶變數”和“系統變數”兩部分。
設置系統“變數名”為“JAVA_HOME"
,"變數值”為“C:\ProgramFiles\Java\jre1.8.0_112"
,即是JDK
安裝路徑,你也可以將地址欄中的路徑直接複製過來。
再次選擇”系統變數"
列表中找到其"Path"
(雙擊)-->"編輯",彈出”編輯系統變數"
,點擊新建;
然後,單擊”系統變數"
下麵的“新建"
按鈕,創建名為”classpath“
的環境變數,值為”."
,英文的一點,代表當前路徑。
環境變數:
JAVA_HOME:
D:\Java\jdk1.8.0_25
CLASSPATH :.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
Path:
;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
Java語言概述
JDK
JDK
(Java
開發工具包),有jdk
其中有javac
為編譯器,是將源程式(xxx.java
)編譯成位元組碼的(xxx.class),然後通過java
指令編譯成(.class)程式的結果。
Java
語言 描述
javaee
企業版
javase
標準版
javame
小型版
學習Java
基礎課程,學會使用eclipse
,eclipse
為Java
集成開發壞境IDE
,創建第一個Java
源文件代碼:
public class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}
// 註解
HelloWorld
為類的名字
public static void main(String[] args)
為主方法
System.out.println("hello world")
為列印輸出,併在控制台顯示 hello world
public
為訪問修飾符,表示公開的訪問類
在運行的平臺上:
Java為面向對象的語法
什麼是面向對象?
答:在Java
中一切皆對象;可以理解為現實世界中的人,物,都可以看做為對象。
在一個Java
的類中,該類可以為對象,那麼類就是一個對象,一個對象就如人,它有方法和屬性,即為動作和狀態的特征。
//建立一個人的類
public class Person{
String name; //人具有姓名的屬性
String age; //人具有年齡的屬性
public void eat(){
System.out.println("人具有吃的方法");
}
}
重點:
java
的必備要點,掌握,jdk,jre,jvm
。jre包含jvm和javase的標準類庫
;jdk包含jre和開發工具集
,java
有很多版,如java se
,java ee
,java me
哦~
下載ecplise
下載eclipse
鏈接(官網):
https://www.eclipse.org/downloads/
接下來我們進入到這個鏈接:
https://www.eclipse.org/downloads/eclipse-packages/
變數的定義
什麼是變數,即為可以變化的量,示例
int age = 12;
其中 int
為變數的數據類型,表示整數
age
為變數
“=”
為賦值操作符,把右邊的值賦值給左邊的變數
public class Person{
int age = 12;
public static void main(String[] args){
System.out.println(age);
}
}
在java
中我們要學的很多,但是都很一般啦,java
本身就是語言,跟學習語言差不多。我們要掌握java
中的一些:標識符,關鍵字,變數,常量,數據類型等。
介紹八種基本變數的類型
數據類型分為基本數據類型和引用數據類型(類,class,介面,interface,數組
)
基本數據類型分數值型,字元型,布爾類型
八種基本數據類型
整型 4種:byte(8位),short(16位),int(32位),long(64位)
字元型 1種:char(16位)
浮點型 2種:float(32位),double(64位)
布爾型 1種:boolean(1位)(true,false)
java
表示整數的為八進位,十進位,十六進位
特殊表達:
八進位: 以0開頭
十六進位: 0x或0X開頭
轉義字元
\uxxxx 四位16進位數所表示的字元
\' 單引號字元
\" 雙引號字元
\\ 反斜杠字元
\r 回車
\n 換行
\t 橫向跳格
\b 退格
標識符的命名:
標識符數字不能開頭,標識符中不能有空格
標識符由字母,數字,下劃線,美元符號組成
標識符嚴格區分大小寫
標識符不能使關鍵字或者保留字
標識符是標識符,關鍵字是關鍵字,不能混為一談
關鍵字
保留字: goto
關鍵字有很多:
abstract,char,else,for,interface,private,super,boolean,class,extends,if,long,
protected,switch,true,break,continue,false,implements,instanceof,public,synchronized,try,
byte,default,final,import,new,return,this,void,case,do,finally,null,short,throw,
volatile,catch,double,float,int,package,static,throws,while等。
變數的命名:
駝峰法命名,單個單詞全小寫,多個單詞第一個單詞小寫,後面單詞首個字母大寫。
需要見名知意。
滿足不是其他的名稱。
強制類型轉換和自動類型轉換
數據類型的轉換
類型轉換為自動類型轉換和強制類型轉換
數據類型的理解:規則口訣
小到大自動,大到小強制,表示小杯子里的水可以倒入大杯子里,而大杯子里的水倒入小杯子里,會出現溢出。
/ 轉換的數據類型比較 /
byte->short(char)->int->long->float->double
Final修飾符
final修飾的,為不可變得值,
final可以修飾變數,修飾類,修飾方法。
被修飾的變數,只能被賦值一次
被修飾的類,不能被繼承
被修飾的方法,不可被重寫
Static
關鍵字的理解
static
代碼塊,只會在類載入的時候執行一次。static變數不需要創建對象就可以引用。- 靜態成員變數可以通過對象訪問,只要訪問許可權足夠就可以。
- 靜態代碼塊,隨著類的載入而執行,只執行一次。
運算符
算術運算符
賦值運算符
複合賦值運算符
自增自減運算符
// 等統統要掌握
// 運算符的優先順序
// 算術運算符 關係運算符 邏輯運算符
算數操作符
一般的 +,-,*,/,還有兩個自增 自減 ,以及一個取模 % 操作符。
這裡的操作演算法,一定要掌握 好強制類型轉換和自動類型轉換。
if條件結構
if(條件){
<語句塊>
}
if-else
if(條件為true){
<語句塊>
}
else{
<語句塊>
}
三目運算符
布爾表達式?表達式1:表達式2
多重if
if(score >=90) {
System.out.println("優");
}
if (score>=80 & score<90){
System.out.println("良");
}
if(score >=60 & score<80){
System.out.println("中");
}
if (score <60){
System.out.println("不及格");
}
switch語句格式:
switch (mon) {
case 1:
case 2:
case 3:
System.out.println(mon + "月是春天");
break;
case 4:
case 5:
case 6:
System.out.println(mon + "月是夏天");
break;
case 7:
case 8:
case 9:
System.out.println(mon + "月是秋天");
break;
case 10:
case 11:
case 12:
System.out.println(mon + "月是冬天");
break;
default:
System.out.println("一年有12個月");
}
while和do-while迴圈語句
while
為true
時,繼續執行;do-while
中條件為true
時,繼續執行,至少會執行一次。
for
語句格式:
for(int i=0;i<10;i++){
表達式語句;
}
continue
和break
continue
為繼續下一次迴圈
break
為結束整個迴圈
數組:相同類型的數據集合為引用數據類型
···
數據類型[] 數組名;
數據類型 數組名[];
數組名 = new 數據類型[數組長度];
數據類型[] 數組名= new 數據類型[數組長度];
···
//這種就是排序演算法,比如有6個人,第一輪要進行5次比較
//第一輪
for(int index=1;index<arr.length;index++)
{
if(arr[0]>arr[index])
{
int temp = arr[0];
arr[0] = arr[index];
arr[index] = temp;
}
}
print(arr);
//第二輪
for(int index=2;index<arr.length;index++)
{
if(arr[1]>arr[index])
{
int temp = arr[1];
arr[1] = arr[index];
arr[index] = temp;
}
}
print(arr);
//第三輪
for(int index=3;index<arr.length;index++)
{
if(arr[2]>arr[index])
{
int temp = arr[2];
arr[2] = arr[index];
arr[index] = temp;
}
}
print(arr);
//第四輪
for(int index=4;index<arr.length;index++)
{
if(arr[3]>arr[index])
{
int temp = arr[3];
arr[3] = arr[index];
arr[index] = temp;
}
}
print(arr);
//第五輪
for(int index=5;index<arr.length;index++)
{
if(arr[4]>arr[index])
{
int temp = arr[4];
arr[3] = arr[index];
arr[index] = temp;
}
}
print(arr);
//第六輪沒有,我們arr.length=6舉例
//int index = 6;index<arr.length; false
public static void selectionSort(int[] arr)
{
for(int count=1;count<arr.length;count++)
{
for(int index=count;index<arr.length;index++)
{
if(arr[count-1]>arr[index])
{
int temp = arr[count-1];
arr[count-1] = arr[index];
arr[index] = temp;
}
}
}
方法
方法聲明格式:
訪問修飾符 返回類型 方法名(參數列表){
方法體
}
面向對象
萬物皆對象,現實中存在的事物都可以看成一個對象,單一職責原則,就是一個類只有一個引起功能變化的原因,一個類中,功能越多就容易耦合性高,復用性就變低,一旦耦合度高,就可能會影響整個程式的運行。
面向對象的三大特征: 繼承,封裝,多態。
封裝,實現對信息的隱藏,只能通過特定的方法進行訪問,隱藏對象的信息,留出介面進行訪問。
static
static+屬性 靜態屬性 類屬性
static+方法 靜態方法 類方法
static+方法內局部変量
static+代碼塊
第二十節:詳細講解String和StringBuffer和StringBuilder的使用
第二十一節:Java語言基礎-關鍵字,標識符,註釋,常量和變數,運算符
第二十七節:Java基礎面向對象-靜態,單例模式,繼承詳情知識點
第32節:Java中-構造函數,靜態方法,繼承,封裝,多態,包
往後餘生,唯獨有你
簡書作者:達叔小生
90後帥氣小伙,良好的開發習慣;獨立思考的能力;主動並且善於溝通
簡書博客: https://www.jianshu.com/u/c785ece603d1
結語
- 下麵我將繼續對 其他知識 深入講解 ,有興趣可以繼續關註
- 小禮物走一走 or 點贊