零基礎小白應該從這里開始
第一章 Java開發(fā)環(huán)境搭建
1. 項目演示
-
什么是PDT4J教學法
- 專門為Java語言準備的項目驅動式教學。
項目名:酒店管理系統(tǒng)
誰用這個系統(tǒng):酒店前臺
-
這個系統(tǒng)包含哪些功能:
- 登錄系統(tǒng)
- 查看房間列表(查看所有房間狀態(tài))
- 預訂房間
- 退房
- 退出系統(tǒng)
2. Java是什么以及Java的跨平臺
- 什么是語言
- 什么是計算機語言
- 計算機語言也是一套標準,某個組織或者某個團隊開發(fā)的,制定的。
- 計算機語言可以讓我們人機交互。
- 計算機語言也有很多種類:
- C語言(面向過程的)
- C++(半面向對象)
- Java(完全面向對象闻牡,Java底層是C++語言寫的。)
- ....
- Java是什么
- Java是一門計算機編程語言绳矩,完全面向對象的罩润,開源免費的。
- Java之父:James Gosling(Sun公司的)
- Java語言誕生于1995年翼馆。
- Java語言的logo:一杯冒著熱氣的咖啡割以。
- Java能做什么
- 企業(yè)級管理系統(tǒng)
- 互聯網分布式系統(tǒng)
- 安卓手機軟件金度、游戲
- 微型設備的內核程序
- Java特性之跨平臺
- 什么是跨平臺?Java程序只需要編寫一次严沥,可以運行在不同的操作系統(tǒng)當中猜极。
- 操作系統(tǒng):windows操作系統(tǒng)、蘋果本的操作系統(tǒng)MacOS消玄、Linux操作系統(tǒng)....
- 在不同的操作系統(tǒng)中安裝不同版本的JVM跟伏,JVM是Java虛擬機,Java虛擬機屏蔽了各個操作系統(tǒng)之間的差異翩瓜。
3. Java開發(fā)環(huán)境搭建
- JDK的安裝
- 關于JDK受扳、JRE、JVM相關術語
- JDK(Java Development Kit)是 Java 語言的軟件開發(fā)工具包兔跌,是整個java開發(fā)的核心勘高,它包含了JAVA的運行環(huán)境和Java系統(tǒng)類庫。
- JRE(Java Runtime Environment)Java運行環(huán)境是一個軟件坟桅,JRE可以讓計算機系統(tǒng)運行Java應用程序华望。JDK安裝之后會自帶一個JRE。
- JVM(Java Virtual Machine)JRE的內部有一個Java虛擬機以及一些標準類庫(Class Library)桦卒。
- JDK立美、JRE、JVM三者關系方灾?
- JDK安裝之后會自帶JRE,JRE有了之后碌更,JRE內部有JVM和標準類庫裕偿。
- JDK包含JRE,JRE包含JVM痛单。
- JDK的下載
- http://www.oracle.com
- 不同的操作系統(tǒng)需要安裝不同版本的JDK嘿棘。有windows版本的,linux版本的旭绒,MacOS版本的鸟妙。我們這里使用windows版。
- 這里學習的Java版本是:Java16.(2021年3月份的時候發(fā)布的挥吵。)
- JDK的安裝
- JDK的根目錄下有一個bin目錄重父,bin目錄有很多命令文件,例如javac.exe忽匈,java.exe房午,其中javac是負責編譯Java程序的,其中java是負責運行java程序的丹允。
- 目前我們沒有使用集成開發(fā)環(huán)境郭厌,對于編譯和運行java程序袋倔,我們是需要windows的dos命令窗口的。怎么打開windows的dos命令窗口呢折柠?
- win + R宾娜,輸入cmd回車即可。
- 關于JDK受扳、JRE、JVM相關術語
- 環(huán)境變量的配置
- path
- path環(huán)境變量不屬于Java扇售,和Java是沒有關系的碳默,path環(huán)境變量隸屬于windows操作系統(tǒng)。path環(huán)境變量是給windows操作系統(tǒng)指路的缘眶。例如你輸入一個ipconfig命令嘱根,這個時候windows操作系統(tǒng)會從path環(huán)境變量的所有路徑中搜索,直到搜索到為止巷懈,找到后執(zhí)行该抒,如果沒有找到則報錯。
- path環(huán)境變量配置的時候顶燕,path的值是多個路徑凑保,路徑和路徑之間采用英文半角分號隔開。
- javac -version 可以查看編譯器的版本號涌攻。
- java -version 可以查看JVM的版本號欧引。
- path
4. Java第一個程序的實現
- Java的加載與執(zhí)行原理
- Java程序從開發(fā)到運行,包括兩個階段恳谎,一個是編譯期芝此,一個是運行期。
- JVM的存在屏蔽了操作系統(tǒng)之間的差異因痛,這樣可以保證Java程序只需要編寫一次婚苹,然后可以運行在不同的操作系統(tǒng)上。所以編譯期可以在windows上完成鸵膏,運行期完全可以放到Linux環(huán)境當中運行膊升。
- java源代碼的編寫需要在Xxxx.java文件中進行(所以,開發(fā)第一步是新建Xxxx.java源文件)
- 在java源文件中編寫java源代碼谭企,程序員的日常開發(fā)廓译,日常寫代碼就是在這個文件中完成的。
- java源文件是無法直接運行的债查,需要經過一個編譯的過程非区。java源文件經過javac命令進行編譯之后,會生成class文件攀操,而class文件被稱為字節(jié)碼文件院仿。最終Java虛擬機執(zhí)行的是class程序。
- 一個java源文件可以生成1~多個class文件。
- 實際上生成了class文件之后歹垫,java源文件就可以刪除了剥汤,因為最終執(zhí)行的是class文件。但是最好不要刪除排惨,因為可能運行結果不是你想要的吭敢,這個時候還需要回去再重新修改java源代碼,重新編譯生成新的class文件暮芭,重新運行鹿驼。
- javac命令是負責編譯的,編譯期最主要是編譯器檢查java源代碼是否符合java的語法規(guī)則辕宏,如果符合java語法規(guī)則畜晰,編譯通過了,才會生成class字節(jié)碼文件瑞筐。
- 術語:類名凄鼻。假設生成的class文件名叫做A.class,那么我們稱A為A類聚假。叫做B.class块蚌,那么我們稱B為B類。
- 注意:生成的class文件不是二進制碼膘格。也就是說字節(jié)碼不是二進制碼峭范,如果是二進制碼的話,操作系統(tǒng)是可以直接執(zhí)行的瘪贱。
- 類加載器ClassLoader去硬盤上找Xxxx.class文件纱控,找到之后,直接將Xxxx裝載到JVM當中政敢。
- java F其徙,這樣的話類加載器就會去硬盤上找F.class文件。java D喷户,這樣的話類加載器就會去硬盤上找D.class文件。
- 文本編輯器Sublime的安裝
- 一個比記事本功能強大一點的文本編輯器访锻。
- 編寫第一個Java程序
- 第一個Java程序的目的是為了測試電腦上的java環(huán)境好用不好用褪尝。所以必須要關心第一個java程序是什么意思,照抄就行期犬。大小寫嚴格照抄河哑。
- 新建一個文件:HelloWorld.java。
- 使用Sublime文本編輯器打開HelloWorld.java文件龟虎,并且編寫java源代碼璃谨。
- 編譯
- javac命令可以編譯java源程序。
- javac命令怎么用:
- javac java文件的路徑
- javac E:\Java零基礎入門到項目實戰(zhàn)\源碼\HelloWorld.java 【這個路徑是絕對路徑】
- javac HelloWorld.java 【這個路徑是相對路徑,需要當前路徑下存在HelloWorld.java文件才可以使用這種方式佳吞」俺】
- 運行
- java 命令可以運行java程序。
- java命令怎么用底扳?
- java 類名 (注意:不是java A.class铸抑,不是java B.class,是java A 衷模,java B)
- java后面不是文件的路徑鹊汛,java后面跟的是類名。(你記住就行阱冶。)
- 運行java程序的第一步:必須先讓DOS命令窗口切換到class文件所在的目錄下才行刁憋。
5. 打印酒店管理系統(tǒng)的主頁面
- 解釋HelloWorld程序
- 單行注釋
- 怎么輸出中文
- 輸出"120"和120有什么區(qū)別。
- 打印酒店管理系統(tǒng)歡迎頁面
- 解決 \ 帶來的問題木蹬。
6. 關于課件與服務群的說明
第二章 Java基礎語法
1. 標識符與關鍵字
-
標識符
- 什么是標識符
- 凡是在java源代碼當中至耻,程序員有權利去命名的單詞,都是標識符届囚。
- 標識符可以標識什么
- 類名
- 方法名
- 變量名
- 常量名
- 接口名....
- 標識符命名規(guī)則(不符合命名規(guī)則的單詞有梆,編譯器是會報錯的。規(guī)則就是一種語法要求意系。)
- 標識符只能由數字泥耀、字母、下劃線蛔添、美元符號$組成痰催,不能含有其它符號。
- 字母包括:英文字母迎瞧、中文夸溶、日文等等...
- 標識符不能以數字開頭。
- 關鍵字不能做標識符凶硅。
- 標識符嚴格區(qū)分大小寫:A和a是不一樣的缝裁。HelloWorld和helloworld是不一樣的。
- 標識符理論上沒有長度的限制足绅,但最好不要太長捷绑。
- 標識符只能由數字泥耀、字母、下劃線蛔添、美元符號$組成痰催,不能含有其它符號。
- 標識符命名規(guī)范(規(guī)范:行業(yè)的默認的編寫規(guī)范。大家都這么寫氢妈,你最好也遵從這個規(guī)范粹污。)
- 當你的程序不符合規(guī)范的時候,編譯沒問題首量,但是對于別人來說壮吩,可能可讀性比較差进苍。符合命名規(guī)范的程序,可讀性比較強鸭叙。大家一看就明白觉啊。
- 命名規(guī)范包括哪些呢?
- 類名递雀、接口名:首字母大寫柄延,后面每個單詞的首字母大寫。例如:HelloWorld缀程、StudentService搜吧、OrderService
- 方法名、變量名:首字母小寫杨凑,后面每個單詞的首字母大寫滤奈。例如:getName、userAge
- 常量名:全部大寫撩满,單詞和單詞之間采用下劃線銜接蜒程,例如:LOGIN_SUCCESS、MATH_PAI
- 見名知意:一看到這個名字就知道這個程序是干啥的伺帘。
- 遵循駝峰命名方式昭躺,單詞和單詞之間很好的區(qū)別。
- 要求很快判斷出標識符是否合法
- public1(合法)
- 1public(不合法:不能以數字開頭)
- hello world (不合法:不能有空格)
- $abc (合法)
- _abc (合法)
- class (不合法:關鍵字不能做標識符)
- 中文 (合法)
- ab% (不合法:標識符中不能含有%伪嫁。)
- 注意:在sublime工具中领炫,默認以綠色高亮顯示的,都是標識符张咳。
- 什么是標識符
-
關鍵字
-
什么是關鍵字
- java語言中所有的關鍵字都是全部小寫的帝洪。無一例外。
- 開發(fā)java語言的時候脚猾,提前定義好的一些具有特殊含義的單詞葱峡,就是關鍵字。
- 關鍵字是不能拿來做標識符的龙助。關鍵字相當于語言自身已經將該單詞占有了砰奕,我們程序員不能用。當然也不能隨便寫提鸟。
- public static void class幢痘,這些都是關鍵字宣赔。
-
關鍵字有哪些
關鍵字 含義 abstract 表明類或者成員方法具有抽象屬性 assert 斷言,用來進行程序調試 boolean 基本數據類型之一答姥,聲明布爾類型的關鍵字 break 提前跳出一個塊 byte 基本數據類型之一漓糙,字節(jié)類型 case 用在switch語句之中铣缠,表示其中的一個分支 catch 用在異常處理中,用來捕捉異常 char 基本數據類型之一,字符類型 class 聲明一個類 const 保留關鍵字蝗蛙,沒有具體含義 continue 回到一個塊的開始處 default 默認蝇庭,例如,用在switch語句中捡硅,表明一個默認的分支哮内。Java8 中也作用于聲明接口函數的默認實現 do 用在do-while循環(huán)結構中 double 基本數據類型之一,雙精度浮點數類型 else 用在條件語句中壮韭,表明當條件不成立時的分支 enum 枚舉 extends 表明一個類型是另一個類型的子類型北发。對于類,可以是另一個類或者抽象類喷屋;對于接口琳拨,可以是另一個接口 final 用來說明最終屬性,表明一個類不能派生出子類屯曹,或者成員方法不能被覆蓋狱庇,或者成員域的值不能被改變,用來定義常量 finally 用于處理異常情況恶耽,用來聲明一個基本肯定會被執(zhí)行到的語句塊 float 基本數據類型之一密任,單精度浮點數類型 for 一種循環(huán)結構的引導詞 goto 保留關鍵字,沒有具體含義 if 條件語句的引導詞 implements 表明一個類實現了給定的接口 import 表明要訪問指定的類或包 instanceof 用來測試一個對象是否是指定類型的實例對象 int 基本數據類型之一偷俭,整數類型 interface 接口 long 基本數據類型之一浪讳,長整數類型 native 用來聲明一個方法是由與計算機相關的語言(如C/C++/FORTRAN語言)實現的 new 用來創(chuàng)建新實例對象 package 包 private 一種訪問控制方式:私用模式 protected 一種訪問控制方式:保護模式 public 一種訪問控制方式:共用模式 return 從成員方法中返回數據 short 基本數據類型之一,短整數類型 static 表明具有靜態(tài)屬性 strictfp 用來聲明FP_strict(單精度或雙精度浮點數)表達式遵循IEEE 754算術規(guī)范 super 表明當前對象的父類型的引用或者父類型的構造方法 switch 分支語句結構的引導詞 synchronized 表明一段代碼需要同步執(zhí)行 this 指向當前實例對象的引用 throw 拋出一個異常 throws 聲明在當前定義的成員方法中所有需要拋出的異常 transient 聲明不用序列化的成員域 try 嘗試一個可能拋出異常的程序塊 void 聲明當前成員方法沒有返回值 volatile 表明兩個或者多個變量必須同步地發(fā)生變化 while 用在循環(huán)結構中
-
2. 變量的聲明與賦值
- 字面量
- 什么是字面量
- 數據,程序運行過程中社搅,要處理業(yè)務驻债,實際上就是要處理數據。數據就是字面量形葬。
- java中都有哪些字面量(有哪些數據合呐?)
- 整數型數據:1 2 3 4 -100 0 120 911
- 浮點型數據:1.2 3.14
- 布爾型數據:true false。true代表真笙以,false代表假淌实。
- 字符型數據:'a' '中' '國'。 java中所有的字符型字面量必須使用單引號括起來猖腕。并且字符型字面量的字符數量有且只有一個拆祈。'abc'這就是語法錯誤了。
- 字符串型數據:"abc" "你好" "我好" "大家好" "中" "a" 倘感。java中所有的字符串型字面量必須使用雙引號括起來放坏。只要是雙引號括起來的,不管字符數量是多少個老玛,都屬于字符串型字面量淤年。
- 什么是字面量
- 變量
- 什么是變量
- 變量就是內存當中的一塊空間钧敞。變量是計算機存儲數據的最基本的單元。
- 怎么聲明變量
- java中的每一個變量都有三要素:
- 數據類型(決定內存空間分配多大麸粮。)
- 變量名(通過變量名可以重復訪問該內存空間)
- 值(數據/字面量:真正存儲的數據)
- 語法格式:
- 數據類型 變量名;
- java中的每一個變量都有三要素:
- 怎么給變量賦值
- 重要語法:java中任何一個變量必須先聲明溉苛,再賦值,才能訪問弄诲。沒有賦值就代表沒有進行初始化愚战。
- 怎么賦值,語法格式是什么齐遵?
- 變量名 = 值; (值就是字面量寂玲。)
- 要求:“值”的數據類型必須和變量的數據類型一致。
- 賦值原理:等號右邊先執(zhí)行洛搀,將右邊的執(zhí)行結果通過等號賦值給變量敢茁。
- 聲明和賦值可以在一起完成。
- int i = 11;
- 變量名不能重名留美。(在同一個域當中彰檬,在java中,可以將一個大括號看做一個域谎砾。)
- 一行上可以聲明多個變量
- int a, b, c;
- int a, b, c = 110; 表示a和b沒有賦值逢倍,c賦值110
- 變量的分類
- 在方法體當中聲明的變量叫做局部變量,局部變量只在當前方法體當中有效景图。也就是說较雕,局部變量是在方法開始執(zhí)行的時候分配內存空間,方法執(zhí)行結束之后挚币,該局部變量的內存就釋放了亮蒋。
- 在方法體之外聲明的變量叫做成員變量。成員變量又分為兩種:
- 帶static關鍵字的:靜態(tài)變量
- 不帶static關鍵字的:實例變量
- 變量的作用域
- 什么是作用域妆毕?
- 變量的有效范圍慎玖。
- 其實,大家只要記住一句話就行:出了大括號就不認識了笛粘。一個大括號就是一個域趁怔。
- 什么是作用域妆毕?
- 什么是變量
3. 數據類型之int、String薪前、boolean
- 什么是數據類型润努,有什么用?
- 變量有三要素: 數據類型示括、變量名铺浇、值。
- 在java程序當中垛膝,任何一個數據都是有類型的随抠,不同的數據類型裁着,在程序執(zhí)行的時候,會分配不同的大小的內存空間拱她。所以數據類型是告訴JVM的,告訴JVM這個變量分配多大的空間扔罪,那個變量分配多大的空間秉沼。
- 這里只描述三個常見的數據類型:
- int (整數型):代表現實世界中的整數。
- String (字符串類型):代表現實世界中的文字矿酵,字符串唬复。
- boolean (布爾類型):代表現實世界中的真和假。
4. 接收用戶鍵盤輸入
- System.out.println("Hello World!");
- 接收用戶鍵盤輸入:
- 程序執(zhí)行到某個位置之后全肮,停下來等待用戶的輸入敞咧,用戶輸入信息之后,java程序可以捕捉到用戶輸入的數據/信息辜腺。
- 這一段代碼實際上是需要面向對象的知識才能聽懂休建。但是為了后面的內容有意思,所以這里我們提前把代碼寫一下评疗,你是聽不懂的测砂,聽不懂沒關系,你可以復制粘貼這一段代碼百匆,能夠完成用戶鍵盤輸入即可砌些。(知識屏蔽法。)
- 主要代碼:
- java.util.Scanner s = new java.util.Scanner(System.in);
- String msg = s.next();
- int val = s.nextInt();
5. Java的常用運算符
- 算術運算符
- 關系運算符
- 邏輯運算符
- 賦值運算符
- 字符串連接運算符
- 條件運算符
6. 控制語句之if
- 控制語句分為三大類
- 分支語句
- if語句
- switch語句
- 循環(huán)語句
- for循環(huán)
- while循環(huán)
- do...while..循環(huán)
- 轉向語句
- break語句
- continue語句
- return語句
- 分支語句
- if語句
- if被翻譯為如果
- if語句有哪些語法格式加匈?
7. 實現酒店管理系統(tǒng)的用戶登錄
8. 控制語句之for
9. 實現酒店管理系統(tǒng)的房間列表展示
10. 控制語句之while
11. 實現酒店管理系統(tǒng)前臺交互功能
12. 什么是方法存璃,有什么用?
- 方法是一段可以被重復使用的代碼片段雕拼。并且每一個方法都可以完成一個獨立的功能纵东。
13. 方法的聲明與調用
- 一個方法應該怎么定義?語法是什么悲没?
- 一個方法應該如何調用篮迎?語法是什么?
14. 方法執(zhí)行時的內存變化
- 棧數據結構
- 方法執(zhí)行時的內存變化
15. 一維數組的初始化與訪問
public class ArrayTest01{
public static void main(String[] args){
int[] arr = {1,2,3,4,4,5};
// 數組長度
System.out.println(arr.length);
// 讀取第一個元素
System.out.println(arr[0]);
// 修改第一個元素
arr[0] = 100;
// 讀取最后一個元素
System.out.println(arr[arr.length - 1]);
// 遍歷一維數組
for(int i = 0; i < arr.length; i++){
System.out.println(arr[i]);
}
}
}
16. 二維數組的初始化與訪問
public class ArrayTest02{
public static void main(String[] args){
int[][] arr = {{4,4,543,4,3453},{543,5643,7654},{3421,4321,5432,55465}};
// 二維數組中有幾個一維數組
System.out.println(arr.length);
// 訪問第一個一維數組的第一個元素
System.out.println(arr[0][0]);
// 訪問最后一個一維數組的最后一個元素
System.out.println(arr[arr.length-1][arr[arr.length-1].length-1]);
// 修改第一個一維數組的第一個元素
arr[0][0] = 100;
// 遍歷二維數組
for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
第三章 類和對象
1. 什么是面向對象的開發(fā)
Java語言是一門完全面向對象的編程語言示姿。(以面向對象的方式進行代碼實現甜橱,功能實現,業(yè)務實現栈戳。)
這里的“對象”是什么岂傲?是相親對象嗎?不是的子檀。這里的“對象”其實指的是現實世界當中實際存在的個體/事物镊掖。
-
假設讓你編寫一段代碼來模擬這樣的一個場景:一個人抽煙的場景乃戈。(你在抽煙的這個場景當中都可以發(fā)現哪些事物呢?)
- 打火機
- 香煙
- 一個會抽煙的人
- 一個能夠抽煙的場所
以上的四個事物都是我們所說的“對象”亩进。
-
什么是面向對象開發(fā)呢症虑?
- 面向對象的開發(fā)方式實際上強調的是:將現實世界分割成不同的單元,每個單元是一個對象归薛,然后對象與對象之間協(xié)作起來谍憔,形成一個系統(tǒng)。
- java程序員實現的是軟件主籍,軟件處理的是現實世界中的業(yè)務习贫,所以現實世界中有什么,程序中就應該一一對應千元,例如現實世界中有銀行卡苫昌,那么程序中也應該有一個銀行卡對象。現實世界中有ATM機幸海,那么程序中也應該有一個ATM機對象∷钌恚現實世界中有一個美女,那么程序中也應該有一個美女對象涕烧。
- 由于人類是以面向對象的方式去認識這個世界的月而,所以面向對象的開發(fā)方式更受歡迎。更容易實現功能议纯。
2. 類的定義和對象的創(chuàng)建
-
類是什么父款?
- 類是一個模板。
- 類實際上是不存在的瞻凤。
- 類是現實世界中對象和對象之間具有共同的特征憨攒,然后經過一個總結概括之后形成了一個模板信息,這個模板信息就是類阀参。
-
對象是什么肝集?
- 對象(Object),對象是實際存在的個體蛛壳。(對象又被叫做實例杏瞻,英語單詞是:instance)
- 劉德華、潘長江衙荐、姚明這些都是對象捞挥。
- 我今天買了一個筆記本電腦,我手里拿著的這個筆記本電腦就是一個對象忧吟。你去年也買了一個筆記本電腦砌函,你現在正在使用的這個筆記本電腦也是一個對象。
- 你們家養(yǎng)了一條金魚,你給它起名小花讹俊,這條金魚小花垦沉,就是一個實際存在的對象。我家也養(yǎng)了一條黑色的魚仍劈,我給它起名叫小黑厕倍,這個小黑就是實際存在的對象。
在java開發(fā)中耳奕,要想有“對象”绑青,必須先有“類”,對象是通過類這個模板造出來的屋群。
一個類可以創(chuàng)建多個對象(一個類可以實例化多個對象)。
通過類創(chuàng)建對象的這個過程坏挠,有一個專業(yè)的術語芍躏,叫做:實例化
-
類是多個對象的共同特征,這個共同特征包括什么降狠?
- 金魚小花和金魚小黑它們有哪些共同的特征呢对竣?
- 名字(name)、顏色(color)榜配、游泳(swiming)
- 名字否纬、顏色這些靜態(tài)的特征可以叫做:屬性。
- 游泳蛋褥,這是一個動詞临燃,其實體現的是一種行為特征,在java程序中烙心,對行為特征的描述采用方法來描述膜廊。
- 類 = 屬性 + 方法 (屬性來源于狀態(tài),方法來源于動作淫茵。)
- 金魚小花和金魚小黑它們有哪些共同的特征呢对竣?
-
類的定義爪瓜,語法格式
class 類名 { // 屬性(來源于狀態(tài),描述的是狀態(tài)) // 方法(來源于動作匙瘪,描述的是動作) }
- 類名:合法的標識符就行铆铆,見名知意。(首字母大寫丹喻,后面每個單詞首字母大寫薄货。)
- 屬性在java程序中以變量的形式存在:int i; boolean sex; String name; (變量三要素:數據類型、變量名驻啤、值菲驴。)
- 方法
3. 抽象酒店管理系統(tǒng)的房間類
- 類的抽取:我們觀察酒店管理系統(tǒng)當中主要管理的是酒店當中的房間骑冗,一個一個房間對象都具有共同的特征赊瞬,然后進行抽象先煎,形成了:房間類(Room)。
- 房間類有哪些屬性呢巧涧?
- 房間編號:no (int類型)
- 一層:101薯蝎、102、103谤绳、.....110
- 二層:201占锯、.......210
- ...
- 五層:501、........510
- 房間類型:type (String)
- 單人間
- 標準間
- 豪華間
- 房間狀態(tài):state(boolean類型)
- true表示占用
- false表示空閑
- 房間的平米數
- 房間的單價
- 房間是否帶窗戶.....
- 房間編號:no (int類型)
第四章 構造方法
1. 構造方法的定義和使用
- 構造方法用來創(chuàng)建對象
- 構造方法執(zhí)行過程中可以給對象的屬性賦值
2. 初始化酒店管理系統(tǒng)所有房間
第五章 實現酒店管理系統(tǒng)功能
1. 實現酒店管理系統(tǒng)房間預訂功能
- 預訂房間的時候缩筛,一定是前臺向系統(tǒng)當中輸入預訂的房間編號消略。
- 預訂房間之后,這個房間的狀態(tài)一定是“占用”的
2. 實現酒店管理系統(tǒng)退房功能
- 退房的時候瞎抛,一定是前臺向系統(tǒng)當中輸入房間編號艺演。
- 退房之后,這個房間的狀態(tài)一定是“空閑”的