題目:輸出門(mén)票信息
一個(gè)景區(qū)根據(jù)游人的年齡收取不同價(jià)格的門(mén)票,其中大于60歲或小于18歲的免費(fèi),18歲到60歲之間的20元。請(qǐng)編寫(xiě)游人(Visitor)類(lèi),根據(jù)年齡段決定能購(gòu)買(mǎi)的門(mén)票價(jià)格并輸出。用戶(hù)輸入n則退出程序。
二、實(shí)現(xiàn)思路:
首先要找出與要解決問(wèn)題有關(guān)的對(duì)象并抽象出類(lèi)。根據(jù)題目我們可以得到“游人"類(lèi),該類(lèi)可以有“姓名”和“年齡”兩個(gè)屬性。讓用戶(hù)輸入年齡,利用選擇結(jié)構(gòu)解決。
三、實(shí)現(xiàn)過(guò)程:
1、新建一個(gè)Visitor類(lèi)輸入下面代碼:
//游人類(lèi)import?java.util.Scanner;????public?class?Visitor{???????String?name;?//姓名???????int?age;//年齡//顯示信息方法????public?void?show(){???????Scanner?input=new?Scanner(System.in);???????while(!"n".equals(name)){??????????if(age>=18&&age<=60){?????????????System.out.println(name+"的年齡為"+age+",門(mén)票價(jià)格為:20元n");???????????}else{?????????????System.out.println(name+"的年齡為"+age+",門(mén)票免費(fèi)n");???????????}??????????System.out.print("請(qǐng)輸入姓名:");??????????name=input.next();//給name屬性賦值??????????if(!"n".equals(name)){?????????????System.out.print("請(qǐng)輸入年齡:");??????????????age=input.nextInt();?????//給age屬性賦值???????????}???????}???????System.out.print("退出程序");????}}
2、再新建一個(gè)自定義類(lèi)(我定義為ljp51)
import?java.util.Scanner;public?class?ljp51{????public?static?void?main(String?[]args){???????Scanner?input=new?Scanner(System.in);???????Visitor?ljp=new?Visitor();?//創(chuàng)建對(duì)象???????System.out.print("請(qǐng)輸入姓名");???????ljp.name=input.next();//給name屬性賦值???????System.out.print("請(qǐng)輸入年齡");???????ljp.age=input.nextInt();//給age屬性賦值???????ljp.show();//調(diào)用顯示信息方法?????}}
3、如果使用記事本Doc命令測(cè)試需要使用javac編譯兩個(gè)類(lèi)
四、結(jié)果輸出:
以上就是長(zhǎng)沙中公優(yōu)就業(yè)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“程序員出題Java類(lèi)和對(duì)象練習(xí)題”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€(xiàn)咨詢(xún),有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。