JAVA基礎IDEA、方法

今日內容

集成開發工具IDEA

方法的參數和返回值方法的重載

教學目標

掌握idea開發工具的安裝

能夠使用idea創建Java工程

能夠使用idea創建包和類

瞭解idea的Java工程目錄

瞭解idea字體的設置

掌握idea常用開發快捷鍵

瞭解項目的導入和刪除

掌握方法定義的參數和返回值含義

瞭解方法的調用過程

瞭解方法的三種調用形式

掌握方法定義的注意事項

掌握方法重載的概念

能夠判斷出方法的重置

第一章 開發工具IntelliJ IDEA

1.1開發工具概述

IDEA是一個專門針對Java的集成開發工具(IDE),由Java語言編寫。所以,需要有JRE運行環境並配置好環境變量。它可以極大地提升我們的開發效率。可以自動編譯,檢查錯誤。在公司中,使用的就是IDEA進行開發。

1.2IDEA軟件安裝

此軟件集成了32位和64位,雙擊 ideaIU-2017.3.2.exe 進入安裝。

1.歡迎界面

JAVA基礎IDEA、方法

2.選擇安裝路徑

JAVA基礎IDEA、方法

3.配置安裝選項

JAVA基礎IDEA、方法

4.開始菜單

JAVA基礎IDEA、方法

5.安裝完畢

JAVA基礎IDEA、方法

IDEA開發工具安裝完成

1.3IDEA首次驅動

1.選擇不導入任何設置,點擊OK

JAVA基礎IDEA、方法

2.選擇Create New Project

JAVA基礎IDEA、方法

3.點擊 new 按鈕,配置安裝的 JDK9 版本

JAVA基礎IDEA、方法

選擇JDK9目錄,點擊確定

JAVA基礎IDEA、方法

4.不使用模板

JAVA基礎IDEA、方法

JAVA基礎IDEA、方法

5. 為工程起名字 demo ,並存儲到 d:\ideawork\demo 目錄下,如果d盤沒有這個目錄,會自動創建。 首次新建項目時,默認的Project Location路徑有問題,如 c:\\xxx ,正確寫法為 c:\\xxx 。更改後不會再 出現此類問題。

JAVA基礎IDEA、方法

6.打開一個每日一帖對話框,勾掉每次啟動顯示,點擊close

JAVA基礎IDEA、方法

7.IDEA的工作界面,我們的項目已經創建好了,如果再新建項目,點擊File->new->Project

1.4創建包和類

展開創建的工程,在源代碼目錄 src 上,鼠標右鍵,選擇 new->package ,鍵入包名 com.itheima.demo , 點擊確定。

JAVA基礎IDEA、方法

JAVA基礎IDEA、方法

右鍵點擊 com.itheima.demo ,選擇 Show in Explorer ,會發現創建包的目錄結構。

JAVA基礎IDEA、方法

可見 com.itheima.demo ,表示創建了多級的文件夾。

小貼士:所謂包,就是文件夾,用來對類文件進行管理。

2. 在創建好的包上,鼠標右鍵,選擇 new->class 創建類,鍵入類名。

JAVA基礎IDEA、方法

JAVA基礎IDEA、方法

3.在代碼編輯區,鍵入主方法,並輸出HelloWorld。

JAVA基礎IDEA、方法

運行程序,在代碼編輯區鼠標右鍵,選擇 Run HelloWorld即可,或在菜單中選擇Run->Run HelloWorld

JAVA基礎IDEA、方法

1.5字體設置

IDEA工具的默認字體非常小,代碼編輯器和控制檯的輸出字體都需要進行調整。

點擊菜單欄上的 File->Settings->Editor->Font 修改字體。

JAVA基礎IDEA、方法

JAVA基礎IDEA、方法

1.6IDEA的項目目錄

我們創建的項目,在d:\ideawork目錄的demo下

.idea 目錄和 demo.iml 和我們開發無關,是IDEA工具自己使用的

out 目錄是存儲編譯後的.class文件

src 目錄是存儲我們編寫的.java源文件

JAVA基礎IDEA、方法

1.7IDEA常用快捷鍵

JAVA基礎IDEA、方法

1.8IDEA修改快捷鍵

在IDEA工具中,Ctrl+空格的快捷鍵,可以幫助我們補全代碼,但是這個快捷鍵和Windows中的輸入法切換快捷

鍵衝突,需要修改IDEA中的快捷鍵。

File->Settings->keymap->Main menu->code->Completion->Basic

JAVA基礎IDEA、方法

雙擊Basic->remove->Ctrl+空格

JAVA基礎IDEA、方法

再次雙擊Basic->Add Keyboard->鍵入 Alt+/->點擊OK

JAVA基礎IDEA、方法

1.9 IDEA導入和關閉項目

關閉IDEA中已經存在的項目, File->Close Project

JAVA基礎IDEA、方法

File->Close Project 這時IDEA回到了剛啟動界面,點擊項目上的 X ,IDEA中就沒有這個項目了

JAVA基礎IDEA、方法

在IDEA的啟動界面上,點擊 OPEN ,選擇項目目錄即可

JAVA基礎IDEA、方法

小貼士:

課後若想通過IDEA同時開啟多個項目,點擊OPEN打開項目時,點擊New Window按鈕

JAVA基礎IDEA、方法

第二章 方法

2.1回顧–方法的定義和調用

前面的課程中,使用過嵌套循環輸出矩形,控制檯打印出矩形就可以了,因此將方法定義為 void ,沒有返回值。 在主方法 main 中直接被調用。


public class Method_Demo1 {
public static void main(String[] args) { print();
}
private static void print() { for (int i = 0; i < 5; i++) {
for (int j = 0; j < 8; j++) { System.out.print("*");
}
System.out.println();
}
}
}

print 方法被 main 方法調用後直接輸出結果,而 main 方法並不需要 print 方法的執行結果,所以被定義為 void 。

2.2 定義方法的格式詳解

修飾符 返回值類型 方法名(參數列表){
//代碼省略... return 結果;
}

修飾符: public static 固定寫法

返回值類型: 表示方法運行的結果的數據類型,方法執行後將結果返回到調用者

參數列表:方法在運算過程中的未知數據,調用者調用方法時傳遞

return:將方法執行後的結果帶給調用者,方法執行到 return,整體方法運行結束

小貼士:return 結果; 這裡的"結果"在開發中,我們正確的叫法成為方法的返回值

2.3定義方法的兩個明確

需求:定義方法實現兩個整數的求和計算。

明確返回值類型:方法計算的是整數的求和,結果也必然是個整數,返回值類型定義為int類型。

明確參數列表:計算哪兩個整數的和,並不清楚,但可以確定是整數,參數列表可以定義兩個int類型的 變量,由調用者調用方法時傳遞


public class Method_Demo2 {
public static void main(String[] args) {
// 調用方法getSum,傳遞兩個整數,這裡傳遞的實際數據又稱為實際參數
// 並接收方法計算後的結果,返回值
int sum = getSum(5, 6); System.out.println(sum);
}
/*
定義計算兩個整數和的方法返回值類型,計算結果是int
參數:不確定數據求和,定義int參數.參數又稱為形式參數
*/
public static int getSum(int a, int b) { return a + b;
}
}

程序執行,主方法 main 調用 getSum 方法,傳遞了實際數據 5和6 ,兩個變量 a和b 接收到的就是實際參數,並 將計算後的結果返回,主方法 main 中的變量 sum 接收的就是方法的返回值。

2.4調用方法的流程圖解

JAVA基礎IDEA、方法

2.5定義方法練習

練習一

比較兩個整數是否相同

分析:定義方法實現功能,需要有兩個明確,即 返回值 和 參數列表 。

明確返回值:比較整數,比較的結果只有兩種可能,相同或不同,因此結果是布爾類型,比較的結果相 同為true。

明確參數列表:比較的兩個整數不確定,所以默認定義兩個int類型的參數。

public class Method_Demo3 {
public static void main(String[] args) {
//調用方法compare,傳遞兩個整數
//並接收方法計算後的結果,布爾值
boolean bool = compare(3, 8); System.out.println(bool);
}
/*
定義比較兩個整數是否相同的方法返回值類型,比較的結果布爾類型參數:不確定參與比較的兩個整數
*/
public static boolean compare(int a, int b) { if (a == b) {
return true;
} else {
return false;
}
}
}

練習二

計算1+2+3…+100的和

分析:定義方法實現功能,需要有兩個明確,即 返回值 和 參數 。

明確返回值:1~100的求和,計算後必然還是整數,返回值類型是int 明確參數:需求中已知到計算的數據,沒有未知的數據,不定義參數


public class Method_Demo4 {
public static void main(String[] args) {
//調用方法getSum
//並接收方法計算後的結果,整數
int sum = getSum(); System.out.println(sum);
}
/*
定義計算1~100的求和方法
返回值類型,計算結果整數int 參數:沒有不確定數據
*/
public static int getSum() {
//定義變量保存求和
int sum = 0;
//從1開始循環,到100結束
for (int i = 1; i <= 100; i++) { sum = sum + i;
}
return sum;
}
}

練習三

實現不定次數打印

分析:定義方法實現功能,需要有兩個明確,即 返回值 和 參數 。

明確返回值:方法中打印出 HelloWorld 即可,沒有計算結果,返回值類型 void 。

明確參數:打印幾次不清楚,參數定義一個整型參數


public class Method_Demo5 {
public static void main(String[] args) {
//調用方法printHelloWorld,傳遞整數printHelloWorld(9);
}
/*
定義打印HelloWorld方法
返回值類型,計算沒有結果 void
參數:不確定打印幾次
*/
public static void printHelloWorld(int n) { for (int i = 0; i < n; i++) {
System.out.println("HelloWorld");
}
}
}

2.6 定義方法的注意事項

定義位置,類中方法外面。

返回值類型,必須要和 return 語句返回的類型相同,否則編譯失敗 。

// 返回值類型要求是int
public static int getSum() {
return 5;// 正確,int類型
return 1.2;// 錯誤,類型不匹配
return true;// 錯誤,類型不匹配
}

不能在 return 後面寫代碼, return 意味著方法結束,所有後面的代碼永遠不會執行,屬於無效代碼。

public static int getSum(int a,int b) { return a + b;
System.out.println("Hello");// 錯誤,return已經結束,這裡不會執行,無效代碼
}

2.7調用方法的三種形式

直接調用:直接寫方法名調用

public static void main(String[] args) { print();
}
public static void print() { System.out.println("方法被調用");
}

賦值調用:調用方法,在方法前面定義變量,接收方法返回值


public static void main(String[] args) { int sum = getSum(5,6); System.out.println(sum);
}
public static int getSum(int a,int b) { return a + b;
}

輸出語句調用:

在輸出語句中調用方法, System.out.println(方法名()) 。


public static void main(String[] args) { System.out.println(getSum(5,6));
}
public static int getSum(int a,int b) { return a + b;
}

不能用輸出語句調用 void 類型的方法。因為方法執行後沒有結果,也就打印不出任何內容。

public static void main(String[] args) { System.out.println(printHello());// 錯誤,不能輸出語句調用void類型方法
}
public static void printHello() { System.out.println("Hello");
}

2.8方法重載

方法重載:指在同一個類中,允許存在一個以上的同名方法,只要它們的參數列表不同即可,與修飾符和返 回值類型無關。

參數列表:個數不同,數據類型不同,順序不同。

重載方法調用:JVM通過方法的參數列表,調用不同的方法。

2.9方法重載練習

練習一

比較兩個數據是否相等。參數類型分別為兩個 byte 類型,兩個 short 類型,兩個 int 類型,兩個 long 類型,並 在 main 方法中進行測試。

public class Method_Demo6 {
public static void main(String[] args) {
//定義不同數據類型的變量byte a = 10;
byte b = 20; short c = 10; short d = 20; int e = 10; int f = 10; long g = 10; long h = 20;
// 調 用
System.out.println(compare(a, b)); System.out.println(compare(c, d)); System.out.println(compare(e, f)); System.out.println(compare(g, h));
}
// 兩個byte類型的
public static boolean compare(byte a, byte b) { System.out.println("byte");
return a == b;
}
// 兩個short類型的
public static boolean compare(short a, short b) { System.out.println("short");
return a == b;
}
// 兩個int類型的
public static boolean compare(int a, int b) { System.out.println("int");
return a == b;
}
// 兩個long類型的
public static boolean compare(long a, long b) { System.out.println("long");
return a == b;
}
}

練習二

判斷哪些方法是重載關係。


public static void open(){}
public static void open(int a){}
static void open(int a,int b){}
public static void open(double a,int b){}
public static void open(int a,double b){}
public void open(int i,double d){}
public static void OPEN(){}
public static void open(int i,int j){}

練習三

模擬輸出語句中的 println 方法效果,傳遞什麼類型的數據就輸出什麼類型的數據,只允許定義一個方法名 println 。


public class Method_Demo7 {
public static void println(byte a) { System.out.println(a);
}
public static void println(short a) { System.out.println(a);
}
public static void println(int a) { System.out.println(a);
}
public static void println(long a) { System.out.println(a);
}
public static void println(float a) { System.out.println(a);
}
public static void println(double a) { System.out.println(a);
}
public static void println(char a) { System.out.println(a);
}
public static void println(boolean a) { System.out.println(a);
}
public static void println(String a) { System.out.println(a);
}
}

相關推薦

推薦中...