標題: java 按照題目所給變量名稱、類型和方法名稱進行編程 求幫助 [打印本頁]
作者: zhazhazhai 時間: 2018-5-31 21:35
標題: java 按照題目所給變量名稱、類型和方法名稱進行編程 求幫助
按題目編程實現下列功能。
要求:按照題目所給變量名稱、類型和方法名稱進行編程,禁止修改;
1. 圖書館接口(Library)
成員方法:
borrow( ),借閱圖書
revert( ),歸還圖書
2. 圖書類(Book)
成員變量:
圖書名稱(name) String類型
出版社(publisher) String類型
構造方法:
通過形參初始化圖書名稱(name)和出版社(publisher)
普通方法:
(1)設置gettor和settor方法用于獲取和設置類中name變量的值;
(2)重寫Equals方法,當且僅當書名(name)和出版社(publisher) 均相等時,即為同一本書。
(3)重寫toString方法,返回書名(name)和出版社(publisher)的信息,樣式如下:“書名:Java程序設計,出版社:清華大學出版社”
3. 館藏圖書類(CollectionBook),繼承自Book類,實現Library接口
成員變量:
圖書編號(bNo) String類型
所在書庫(stacks) String類型
是否借閱(isBorrow) boolean類型 圖書狀態為已借閱時,值為true
構造方法:
調用父類構造方法初始化書名(name)和出版社(publisher)信息,然后初始化圖書編號(bNo)和線路圖書書庫(stacks)。
普通方法:
(1)實現接口中的borrow方法
如果圖書狀態為已借閱,則輸出“對不起,該圖書已借閱”,否則,修改該圖書狀態為已借閱,輸出“借閱成功”
(2)實現接口中的revert方法
如果圖書狀態是可借閱狀態,輸出“該圖書已歸還”,否則,修改圖書借閱狀態為未借閱,并輸出“還書成功”;
4. 通過main函數測試。
(1)創建兩個CollecitonBook對象book1和book2,分別輸出book1和book2,并調用其equals方法判斷兩個對象是否相等;
(2)通過鍵盤輸入整數,輸入0,則對book1進行借閱,輸入1,則對book進行歸還操作。
作者: 馬文飛 時間: 2018-6-2 16:20
package 圖書館;
import java.util.Scanner;
interface Library{ //圖書館接口(Library)
abstract void borrow();
abstract void revert();
}
abstract class Book{ //圖書類(Book)
String name;
String publisher;
public Book(String name,String p){
this.name=name;
publisher=p;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString() {
return "Book [書名:" + name + " , 出版社:" + publisher + " ]";
}
}
class CollectionBook extends Book implements Library{
String bNo;
String stacks;
boolean isBorrow;
public CollectionBook(String name,String p,String bNo, String stacks,boolean isBOrrow) {
super(name, p);
this.bNo=bNo;
this.stacks=stacks;
isBOrrow=true;
}
public void borrow() {
if (isBorrow==true) {
System.out.println("對不起,該圖書已借閱");
}
else {
isBorrow=true;
System.out.println("借閱成功");
}
}
public void revert() {
if (isBorrow!=true) {
System.out.println("該圖書已歸還");
}
else {
isBorrow=false;
System.out.println("還書成功");
}
}
}
public class App1 {
public static void main(String[] args) {
CollectionBook book1=new CollectionBook("C語言", "xx出版社", "001", "計算機類", true);
CollectionBook book2=new CollectionBook("Java程序設計", "清華大學出版社", "002", "計算機類", true);
System.out.println("book1.equals(book2)是"+(book1.equals(book2)));
if (book1.name==book2.name && book1.publisher==book2.publisher) {
System.out.println("該書為同一本");
}
else {
System.out.println("該書不是同一本");
}
Scanner App1=new Scanner(System.in);
System.out.println("請輸入0或1:");
int n=App1.nextInt();
if (n==0) {
book1.borrow();
}
if (n==1) {
book1.revert();
}
}
}
作者: zhanghaoyuan.66 時間: 2019-5-5 18:01
你沒有重寫Equals()方法啊
作者: 123zxc123 時間: 2019-7-29 08:13
這題值100黑幣 笑哭
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |