java实验十文档格式.docx
- 文档编号:19437026
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:11
- 大小:66.54KB
java实验十文档格式.docx
《java实验十文档格式.docx》由会员分享,可在线阅读,更多相关《java实验十文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
returnwidth;
publicvoidsetWidth(doublewidth){
this.width=width;
publicStringgetColor(){
returncolor;
publicvoidsetColor(Stringcolor){
this.color=color;
publicRectangle(doublewidth,doubleheight,Stringcolor){
this.setColor(color);
this.setHeight(height);
this.setWidth(width);
publicvoidgetArea(){
doublearea=0;
area=this.height*this.width;
System.out.println("
矩形的面积为:
"
+area);
publicStringtoString(){
StringrecStr="
矩形的宽度:
+this.getWidth()+"
高度:
+this.getHeight()+"
颜色:
+this.getColor();
returnrecStr;
}
publicclassJavaApplication{
publicstaticvoidmain(String[]args){
Rectanglerec=newRectangle(5,8,"
蓝色"
);
rec.getArea();
System.out.println(rec.toString());
}
2.一副牌Deck有52张扑克Card组成(不含王牌),每张牌有自己的牌型suit(用char类型)和点数rank(用String类型),补充完整下面的类的定义。
publicclassCard{
publicCard(){
this.suit=suit;
this.rank=rank;
}
publicStringtoString(){
returnsuit+rank;
publicstaticvoidmain(String[]args){
Cardc=newCard('
红'
"
10"
System.out.println(c);
privatecharsuit;
privateStringrank;
publicCard(charsuit,Stringrank){
Cardc=newCard('
System.out.println(c);
3.银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期(Date),账户密码(六位的数字,可以用0开头),当前的余额。
银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。
定义该类,并要求该类提供如下方法:
存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
importjava.util.Date;
importjava.util.Scanner;
publicclassBank{
privateStringid;
privateStringname;
privateDatecreateTime;
privateStringmima;
privateintbalance;
publicamount(Stringid,Stringname,intbalance){
super();
this.id=id;
this.name=name;
this.balance=balance;
this.createTime=newDate();
this.mima="
123456"
;
publicvoiddeposit(intamount){
this.balance+=amount;
publicvoidwithdraw(intamount){
this.balance-=amount;
publicDategetCreateTime(){
returncreateTime;
publicvoidsetCreateTime(DatecreateTime){
this.createTime=createTime;
publicvoidchangemima(){
Scannersc=newScanner(System.in);
请输入新的密码:
Stringmima=sc.nextString();
this.mima=newmima;
publicstaticvoidmain(String[]args){
Banka=newBank("
1234567890"
luxi"
1000);
a.deposit(100);
a.withdraw(150);
a.changemima();
a.createTime();
账户账号:
+a.getId());
System.out.printf("
账户姓名:
"
+a.getName());
账户日期:
+a.getCreateTime());
账户余额:
+a.getAmount());
4.一个Fan有自己的品牌和型号,其调速旋钮speed可以调整Fan的速度(档级在0、1、2、3范围内),通电开关可以改变电扇状态(通电表示工作就绪或者工作,断电表示停止工作)请仔细分析并提供Fan类的定义。
并编写程序对其进行测试。
具体要求如下:
(1)表示该类对象的状态可以用品牌(brand,可以用字符串型表示,因为品牌通常都是多个字符组成的)、工作状态(status,用来反映一个电风扇是否处于通电就绪ready、正在转动working或者静止stop)、当前的速度(speed,可以用数值型表示);
(2)用构造函数可以创建一个电风扇对象,指定其品牌就可以了,一个电风扇的初始状态可以是静止,而且初始速度为0,分析为什么不适宜直接通过构造函数的形式参数来指定初始状态和速度;
(3)给该类提供如下的方法,重点考虑每个动作导致的状态变化,形成代码逻辑;
●提供一个方法来表示电风扇的开与关,模拟一个开关动作
●通过加速和减速两个方法来调整速度,当速度超出极限(0或3),向控制台输出一条告警信息作为提示,并且不执行该调速动作。
●提供一个方法能够返回电风扇当前的状态和速度
(4)添加一个main方法,按顺序完成以下工作,考虑状态与速度变化和开关动作之间的关系:
●创建一个电风扇对象,用f表示;
●加速一次电风扇;
●向控制台输出f的状态和速度;
●启动电风扇(调用对象的开关方法);
●连续加速4次(考虑发生什么情况);
●连续减速4次(考虑发生什么情况);
●关掉电风扇(调用对象的开关方法);
●连续加速2次
publicclassFan{
privateStringbrand;
privateStringtype;
privateintlevel;
privateStringstatus;
publicFan(intlevel,Stringstatus){
this.brand="
apple"
this.type="
123"
this.level=level;
this.status=status;
publicvoidstart(){
this.level=1;
this.status="
on"
风扇已启动转速是%d\n"
this.level);
publicvoidstop(intlevel,Stringstatus){
this.status=status;
风扇已关闭进入待机状态\n"
publicvoidsetspeed(intlevel){
你已经设置的转速等级是%d\n"
publicvoidspeed(){
请设置你要的转速*1,2,3*\n"
Scannerconn=newScanner(System.in);
intle=conn.nextInt();
switch(le){
case1:
this.setspeed
(1);
break;
case2:
this.setspeed
(2);
case3:
this.setspeed(3);
case0:
this.stop(0,"
off"
publicstaticvoidmain(String[]args){
Fanf=newFan(1,"
Scannercon=newScanner(System.in);
欢迎使用%s公司的产品,你用的型号是%s\n"
f.brand,f.type);
while(1>
0){
请输入你要设置有start,stop,speed分别有数字1,2,3替代"
{
intac=con.nextInt();
switch(ac){
{f.start();
{f.stop(0,"
{f.speed();
5.解释下面的程序运行结果输出为什么是null
publicclassMy{
Strings;
publicvoidMy(){
s="
Constructor"
publicvoidgo(){
System.out.println(s);
publicstaticvoidmain(Stringargs[]){
Mym=newMy();
m.go();
答:
因为程序中s=”Constructor”;
是在方法My中进行的,Main方法中并没有调用方法My,所以s的值是null。
6.给出下面的类,找出后面的5个声明中,哪些是重载后的构造函数
publicclassConstOver{
publicConstOver(intx,inty,intz){
A.ConstOver(){}
B.ProtectedintConstOver(){}
C.PrivateConstOver(intz,inty,bytex){}
D.PublicObjectConstOver(intx,inty,intz){}
E.PublicvoidConstOver(bytex,bytey,bytez){}
A
7.给出下面的类,找出后面的5个声明中,哪些是重载后的setVar函数
publicclassMethodOver{
publicvoidsetVar(inta,intb,floatc){
A.PrivatevoidsetVar(inta,floatc,intb){}
B.ProtectedvoidsetVar(inta,intb,floatc){}
C.PublicintsetVar(inta,floatc,intb){returna;
D.PublicintsetVar(inta,intb,floatc){returna;
E.ProtectedfloatsetVar(inta,intb,floatc){returnc;
C、D、E
评语:
日期:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实验