Java快速入門-01-基礎篇
摘要:
Java快速入門-01-基礎篇
如果基礎不好或者想學的很細,請參看:菜鳥教程-JAVA
本筆記適合快速學習,文章後面也會包含一些常見面試問題,記住快捷鍵操作,一些內容我就不轉載了,直接附上鍊接,嘻嘻
開發工具的安裝與配置
...
Java快速入門-01-基礎篇
- 如果基礎不好或者想學的很細,請參看:ofollow,noindex" target="_blank">菜鳥教程-JAVA
- 本筆記適合快速學習,文章後面也會包含一些常見面試問題,記住快捷鍵操作,一些內容我就不轉載了,直接附上鍊接,嘻嘻
開發工具的安裝與配置
- 安裝 Eclipse 工具請參照:https://jingyan.baidu.com/article/6d704a1349d84a28db51cab1.html
- JDK 環境變數配置:http://www.runoob.com/java/java-environment-setup.html
- 環境配置後在終端檢查,java,javac,java -version,有任何一個命令出錯都說明環境沒配置後,是在不行,參考我寫的一篇裡面有環境配置:https://blog.csdn.net/qq_40147863/article/details/82762678
- Eclipse 安裝後配置:
- https://blog.csdn.net/leyili_s/article/details/79734843
在 Eclipse 中建立 java 專案
- 請參照:https://blog.csdn.net/tsundere_ning/article/details/79587060
- 有很多 快捷操作 注意一下
第一個 JAVA 程式
- 一般的我們新建包>新建java類,會自動生成一條頭部包資訊,如果修改包名,或者直接從別的地方拷貝程式碼,要相應修改,例
package learn;
- 我們通過一個簡單的例項來展示 Java 程式設計,建立檔案 HelloWorld.java(檔名需與類名一致), 程式碼如下:
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } }
- 一般的 main 函式我們是不會自己去敲的,而是使用快捷鍵,輸入main,然後按下Alt + /兩個鍵,會提示 main 函式,選好後回車
- 注:String args[] 與 String[] args 都可以執行,但推薦使用 String[] args,這樣可以避免歧義和誤讀
- 然後 System.out.println(" ")函式也不會有人一個字一個字敲,輸入syso,然後Alt + /兩個鍵,會提示 sysout 函式,選好後回車
java 程式的執行
-
Eclipse 中執行 (最好記住快捷鍵)
- 1.快捷鍵:Ctrl + F11
- 2.右鍵>run as>Java Application
- 終端或者 cmd 中執行
C:> javac HelloWorld.java C:> java HelloWorld Hello World
基本語法
- 編寫Java程式時,應注意以下幾點:
- 大小寫敏感:Java是大小寫敏感的,這就意味著識別符號Hello與hello是不同的
- 類名:對於所有的類來說,類名的首字母應該大寫。如果類名由若干單片語成,那麼每個單詞的首字母應該大寫,例如 MyFirstJavaClass
- 方法名:所有的方法名都應該以小寫字母開頭。如果方法名含有若干單詞,則後面的每個單詞首字母大寫
- 原始檔名:原始檔名必須和類名相同。當儲存檔案的時候,你應該使用類名作為檔名儲存(切記Java是大小寫敏感的),檔名的字尾為.java。(如果檔名和類名不相同則會導致編譯錯誤)
- 主方法入口:所有的Java 程式由public static void main(String []args)方法開始執行
Java識別符號
- Java所有的組成部分都需要名字。類名、變數名以及方法名都被稱為識別符號
- 關於Java識別符號,有以下幾點需要注意:
- 所有的識別符號都應該以字母(A-Z或者a-z),美元符($)、或者下劃線(_)開始
- 首字元之後可以是字母(A-Z或者a-z),美元符($)、下劃線(_)或數字的任何字元組合
- 關鍵字不能用作識別符號
- 識別符號是大小寫敏感的
- 合法識別符號舉例:age、$salary、_value、__1_value
- 非法識別符號舉例:123abc、-salary
Java修飾符
- 像其他語言一樣,Java可以使用修飾符來修飾類中方法和屬性。主要有兩類修飾符:
- 訪問控制修飾符 : default, public , protected, private
- 非訪問控制修飾符 : final, abstract, strictfp
Java變數
- Java中主要有如下幾種型別的變數
- 區域性變數
- 類變數(靜態變數)
- 成員變數(非靜態變數)
Java陣列
- 陣列是儲存在堆上的物件,可以儲存多個同類型變數。在後面的章節中,我們將會學到如何宣告、構造以及初始化一個數組
Java列舉
- Java 5.0引入了列舉,列舉限制變數只能是預先設定好的值。使用列舉可以減少程式碼中的bug
- 例如,我們為果汁店設計一個程式,它將限制果汁為小杯、中杯、大杯。這就意味著它不允許顧客點除了這三種尺寸外的果汁
class FreshJuice { enum FreshJuiceSize{ SMALL, MEDIUM , LARGE } FreshJuiceSize size; } public class FreshJuiceTest { public static void main(String []args){ FreshJuice juice = new FreshJuice(); juice.size = FreshJuice.FreshJuiceSize.MEDIUM; } }
- 注意:列舉可以單獨宣告或者宣告在類裡面。方法、變數、建構函式也可以在列舉中定義
Java 關鍵字
- 下面列出了Java 關鍵字。這些保留字不能用於常量、變數、和任何識別符號的名稱
- 沒事多背背
類別 | 關鍵字 | 說明 |
---|---|---|
訪問控制 | private | 私有的 |
protected | 受保護的 | |
public | 公共的 | |
類、方法和變數修飾符 | abstract | 宣告抽象 |
class | 類 | |
extends | 擴充,繼承 | |
final | 最終值,不可改變的 | |
implements | 實現(介面) | |
interface | 介面 | |
native | 本地,原生方法(非Java實現) | |
new | 新,建立 | |
static | 靜態 | |
strictfp | 嚴格,精準 | |
synchronized | 執行緒,同步 | |
transient | 短暫 | |
volatile | 易失 | |
程式控制語句 | break | 跳出迴圈 |
case | 定義一個值以供switch選擇 | |
continue | 繼續 | |
default | 預設 | |
do | 執行 | |
else | 否則 | |
for | 迴圈 | |
if | 如果 | |
instanceof | 例項 | |
return | 返回 | |
switch | 根據值選擇執行 | |
while | 迴圈 | |
錯誤處理 | assert | 斷言表示式是否為真 |
catch | 捕捉異常 | |
finally | 有沒有異常都執行 | |
throw | 丟擲一個異常物件 | |
throws | 宣告一個異常可能被丟擲 | |
try | 捕獲異常 | |
包相關 | import | 引入 |
package | 包 | |
基本型別 | boolean | 布林型 |
byte | 位元組型 | |
char | 字元型 | |
double | 雙精度浮點 | |
float | 單精度浮點 | |
int | 整型 | |
long | 長整型 | |
short | 短整型 | |
變數引用 | super | 父類,超類 |
this | 本類 | |
void | 無返回值 | |
保留關鍵字 | goto | 是關鍵字,但不能使用 |
const | 是關鍵字,但不能使用 | |
null | 空 |
Java註釋
- 類似於C/C++,Java也支援單行以及多行註釋。註釋中的字元將被Java編譯器忽略
public class HelloWorld { /* 這是第一個Java程式 *它將列印Hello World * 這是一個多行註釋的示例 */ public static void main(String []args){ // 這是單行註釋的示例 /* 這個也是單行註釋的示例 */ System.out.println("Hello World"); } }
繼承
- 在Java中,一個類可以由其他類派生。如果你要建立一個類,而且已經存在一個類具有你所需要的屬性或方法,那麼你可以將新建立的類繼承該類
- 利用繼承的方法,可以重用已存在類的方法和屬性,而不用重寫這些程式碼。被繼承的類稱為超類(super class),派生類稱為子類(subclass)
介面
- 在Java中,介面可理解為物件間相互通訊的協議。介面在繼承中扮演著很重要的角色
- 介面只定義派生要用到的方法,但是方法的具體實現完全取決於派生類
Java 源程式與編譯型執行區別
如下圖所示:
Java 物件和類
-
Java作為一種面嚮物件語言。支援以下基本概念:
多型、繼承、封裝、抽象、類、物件、例項、方法、過載 -
物件:物件是類的一個例項(物件不是找個女朋友),有狀態和行為。例如,一條狗是一個物件,它的狀態有:顏色、名字、品種;行為有:搖尾巴、叫、吃等
類:類是一個模板,它描述一類物件的行為和狀態
Java中的類
- 類可以看成是建立Java物件的模板
- 通過下面一個簡單的類來理解下Java中類的定義:
public class Dog{ String breed; int age; String color; void barking(){ } void hungry(){ } void sleeping(){ } }
一個類可以包含以下型別變數:
- 區域性變數:在方法、構造方法或者語句塊中定義的變數被稱為區域性變數。變數宣告和初始化都是在方法中,方法結束後,變數就會自動銷燬
- 成員變數:成員變數是定義在類中,方法體之外的變數。這種變數在建立物件的時候例項化。成員變數可以被類中方法、構造方法和特定類的語句塊訪問。
-
類變數:類變數也宣告在類中,方法體之外,但必須宣告為static型別。
一個類可以擁有多個方法,在上面的例子中:barking()、hungry()和sleeping()都是Dog類的方法
構造方法
- 每個類都有構造方法。如果沒有顯式地為類定義構造方法,Java編譯器將會為該類提供一個預設構造方法
- 在建立一個物件的時候,至少要呼叫一個構造方法。構造方法的名稱必須與類同名,一個類可以有多個構造方法
- 下面是一個構造方法示例:
public class Puppy{ public Puppy(){ } public Puppy(String name){ // 這個構造器僅有一個引數:name } }
建立物件
- 物件是根據類建立的。在Java中,使用關鍵字 new 來建立一個新的物件。建立物件需要以下三步:
- 宣告:宣告一個物件,包括物件名稱和物件型別
- 例項化:使用關鍵字new來建立一個物件
- 初始化:使用new建立物件時,會呼叫構造方法初始化物件
- 下面是一個建立物件的例子:
public class Puppy{ public Puppy(String name){ //這個構造器僅有一個引數:name System.out.println("小狗的名字是 : " + name ); } public static void main(String []args){ // 下面的語句將建立一個Puppy物件 Puppy myPuppy = new Puppy( "tommy" ); } }
- 編譯並執行上面的程式,會打印出下面的結果:
小狗的名字是 : tommy
關於類的常見面試問題
-
1、一個".java"原始檔中是否可以包括多個類(不是內部類)?有什麼限制?
- 可以有多個類,但只能有一個public的類,並且public的類名必須與檔名相一致
-
2、Java有沒有goto?
- java中的保留字,現在沒有在java中使用
-
3.請說出作用域public,private,protected,以及不寫時的區別
這四個作用域的可見範圍如下表所示
說明:如果在修飾的元素上面沒有寫任何訪問修飾符,則表示friendly
更多文章連結:Java 快速入門
本筆記不允許轉載