第四章面向对象编程基础.docx

上传人:b****5 文档编号:7478906 上传时间:2023-01-24 格式:DOCX 页数:14 大小:18.68KB
下载 相关 举报
第四章面向对象编程基础.docx_第1页
第1页 / 共14页
第四章面向对象编程基础.docx_第2页
第2页 / 共14页
第四章面向对象编程基础.docx_第3页
第3页 / 共14页
第四章面向对象编程基础.docx_第4页
第4页 / 共14页
第四章面向对象编程基础.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

第四章面向对象编程基础.docx

《第四章面向对象编程基础.docx》由会员分享,可在线阅读,更多相关《第四章面向对象编程基础.docx(14页珍藏版)》请在冰豆网上搜索。

第四章面向对象编程基础.docx

第四章面向对象编程基础

第四章:

面向对象编程基础

EX1:

(题库第四章ex4)难度等级:

A

输出成员变量的值.

publicclassStudent//Student是类名

{

intsNumber;//学号

StringsName;//姓名

StringsClass;//班号

publicstaticvoidmain(Stringargs[])

{

Studentx=newStudent();//访问成员变量

System.out.println(x.sName);//输出姓名。

System.out.println(x.sNumber);//输出学号。

}

}

EX2:

(JAVA2简明教程P114)难度等级:

A

类的属性、方法的调用。

importjava.awt.Graphics;

//定义一个Desk类

classDesk

{publicStringColor;

publicintLength;

publicintWidth;

publicintHeight;

//计算桌子体积的方法

intVolume()

{

returnLength*Width*Height;

}

//显示桌子信息的方法

voidDeskMessage(Graphicsg,intx,inty)

{g.drawString("桌子的颜色:

"+Color,x,y);

g.drawString("桌子的长度:

"+Length,x,y+10);

g.drawString("桌子的宽度:

"+Width,x,y+20);

g.drawString("桌子的高度:

"+Height,x,y+30);

}

}

//该类声明一个Desk对象

publicclassDeskClassextendsjava.applet.Applet

{

publicvoidpaint(Graphicsg)

{

DeskMyDesk=newDesk();//定义一个MyDesk对象。

intMyDeskVolume,Volume;

//给MyDesk的实例变量赋值

MyDesk.Color="Red";//给对象的属性赋值。

MyDesk.Length=23;//长。

MyDesk.Width=34;//宽。

MyDesk.Height=25;//高。

//计算桌子的体积

MyDeskVolume=MyDesk.Volume();//调用Volume()方法。

Volume=MyDesk.Length*MyDesk.Width*MyDesk.Height;

g.drawString("体积是:

"+MyDeskVolume,20,20);

g.drawString("体积是:

"+Volume,20,40);

MyDesk.DeskMessage(g,160,20);

}

}

EX3:

(JAVA实验指导P261)//难度等级:

A

定义一个类MyClass,包含一个属性Data和方法getData,setData。

ClassMyclass

{

publicintdata;

intgetData(intdata)//方法getData(),返回的data值。

{

returndata;

}

voidsetData(inti)//方法setData,设置data的值。

{

data=i;

}

}

publicclassMyclass1

{

publicstaticvoidmain(Stringargs[])

{

Myclassmyclass=newMyclass();

myclass.setData(5);

intj=myclass.getData();

System.out.println(j);

}

}

EX4:

(JAVA实验指导P835.18)难度等级:

C

编写一个类实现复数的加、减、乘运算。

classComplexNumber

{

publicdoublem_dRealPart;

publicdoublem_dImaginPart;

publicdoublei,r;

ComplexNumber(doubler,doublei)//构造函数,使形参r,i传给

{m_dRealPart,m_dImaginPart。

m_dRealPart=r;

m_dImaginPart=i;

}

ComplexNumber()//构造函数,无形参。

{

}

doublegetRealPart()

{

returnm_dRealPart;

}

doublegetImaginPart()

{

returnm_dImaginPart;

}

voidsetRealPart(doubled)

{

m_dRealPart=d;

}

voidsetImaginPart(doubled)

{

m_dImaginPart=d;

}

voidcomplexAdd(ComplexNumberc)//使本对象与参数c进行和运算。

{

r=this.getRealPart()+c.getRealPart();//实部

i=this.getImaginPart()+c.getImaginPart();//虚部

System.out.println("complexaddis:

"+r+"+"+i+"i");

}

voidcomplexMinus(ComplexNumberc)//使本对象与参数c进行差运算。

{

r=this.getRealPart()-c.getRealPart();//实部

i=this.getImaginPart()-c.getImaginPart();//虚部

System.out.println("complexminusis:

"+r+"+"+i+"i");

}

voidcomplexMultic(ComplexNumberc)

{

r=this.getRealPart()*c.getRealPart()-(c.getRealPart()*this.getImaginPart());

i=this.getRealPart()*c.getImaginPart()+this.getImaginPart()*c.getRealPart();

System.out.println("complexmulticis:

"+r+"+"+i+"i");

}

}

publicclassMyComplex

{

publicstaticvoidmain(Stringargs[])

{

ComplexNumbercomplexnumber1=newComplexNumber(2,3.5);

ComplexNumbercomplexnumber2=newComplexNumber();

complexnumber2.setRealPart(5.0);

complexnumber2.setImaginPart(-1.2);

plexAdd(complexnumber2);

plexMinus(complexnumber2);

plexMultic(complexnumber2);

}

}

EX5:

(JAVA实验指导P845.23)难度等级:

D

编写一个类实现银行帐户的概念。

包括的属性有:

帐号、储户姓名、地址、存款余额,包括的方法有:

存款、取款、查询、计算利息、累加利息等。

importjava.io.*;

publicclassSimpleAccount

{

publicstaticvoidmain(Stringargs[])

{

doubleinit_value=10;//开户金额

doublesave_value=100;//存款金额

doubleget_value=50;//取款金额

doubleinterest_rate=0.03;//存储利率

BankAccountbaMyAccount=newBankAccount("Sue",init_value);

baMyAcccount.saveMoney(save_value);//存钱

BankAccount.setInteresRate(interest_rate);//设置利率

System.out.println(baMyAccount.AccountMeg());//输出储户信息、利率

for(inti=1;i<=10;i++)//计算十年后的金额

{

baMyAccount.accumuInterest(365);

}

System.out.println("\nBalanceafter10years:

\t"+baMyAccount.getBalance());

BankAccount.setInteresRate(interast_rate-0.011);//修改当前利率

baMyAccount.getMoney(get_value);//取钱

System.out.println(baMyAccount.AccountMeg());//显示当前储户信息

}

}

classBankAccount//银行储户类

{

staticfinaldoublem_dLOWESTBALANCE=10.0;//最低开户金额

staticdoublem_dInterestRate;//年利率

Stringm_sName;//姓名

privatedoublem_dBalance;//储户金额

publicBankAccount(Stringname,doubleinitBalance)//构造函数

{

if(initBalance

System.exit(0);//不能开户则退出

m_dBalance=initBalance;

m_sName=newString(name);

}

staticbooleansetInterestRate(doubleNewRate)//设置公共储蓄利率

{

if(NewRate>0)

{

m_dInterestRate=NewRate;//传递参数

returntrue;//设置成功//返回状态

}

else

returnfalse;//设置失败//返回状态

}

doublegetBalance()//获取储户金额

{

returnm_dBalance;//返回金额

}

finaldoublegetInterestRate()//获取当前存储利率

{

returnm_dInterestRate;//返回利率

}

StringAccountMeg()//获取当前储户信息

{

Strings;

s="AccountName:

\t\t"+m_sName+"\nAccountAmount:

\t"+Double.toString(m_dBalance)+

"\nCurrentInterestRate:

\t"+Double.toString(BankAccount.getInterestRate());

returns;//返回储户的信息

}

voidsaveMoney(doublesaveamount)//存款操作

{

if(saveamount>0)

{

m_dBalance+=saveamount;//存款

}

booleangetMoney(doublegetamount)//取款操作

{

if(m_dBalance>=m_dLOWESTBALANCE)//帐户存在的条件

{

m_dBalance-=getamount;

returntrue;//取款成功

}

else

returnfalse;//取款失败

}

doublecalculateInterest(intDays)//按年利率计算给定的天数的利息数

{

return(m_dBalance*m_dInterestRate*Days/365);

}

voidaccumuInterest(intDays)//计算利息后将利息累加到帐户金额中

{

m_dBalance+=calculateInterest(Days);//金额累加

}

}

EX6:

(JAVA实验指导P855.26)难度等级:

D

编写一个类实现校园201电话卡的概念。

包括帐号、密码、剩余金额、三个属性和若干方法。

帐号顺序生成不可改,密码初值由构造函数指定,对象创建后可以修改,但要输入原有的密码,用户可以查询剩余金额,可以打电话(假设每次扣除5角)。

classTelCard

{

staticdoublemny;//金额

staticintID;//卡号

staticintpsw;//密码

TelCard(inti,intp,doublem)//构造函数

{

ID=i;

psw=p;

mny=m;

}

voidsetPassWord(inti,intp,intrp)//修改密码

{

if((psw==p)&&(ID==i))//能修改的条件

{

psw=rp;

System.out.println("Nowpasswordis:

"+psw);

}

else

System.out.println("Resetpasswordfalse!

");

}

publicdoublecall(intt)//剩余金额

{

mny-=t*0.5;

returnmny;

}

StringCardMeg()//显示电话卡的信息

{

Stringstr;

str="\nCardID:

"+ID+"\nPassWord:

"+psw+"\nRemainMoney:

"+mny;

returnstr;

}

}

publicclassMyCard

{

publicstaticvoidmain(Stringargs[])

{

intcardID=7692;//卡号

intpassword=123456,rpassword=654321;//原先密码与修改密码

doubleMoney=100.0,remainMoney;//卡值与剩余值

inttimes=15;//通话次数

TelCardcard=newTelCard(cardID,password,Money);

System.out.println("Thiscardmessage:

"+card.CardMeg());

remainMoney=card.call(times);//剩余金额

card.setPassWord(cardID,password,rpassword);//修改密码

System.out.println("RemainMoney:

"+remainMoney);

}

}

EX7:

(java2简明教程)难度等级:

B

importjava.awt.Graphics;

classDesk2

{

privateStringColor;

privateintLength;

privateintWidth;

privateintHeight;

Desk2()//构造函数

{

Color="";

Length=0;

Width=0;

Height=0;

}

Desk2(StringC,intL,intW,intH)//构造函数

{

Color=C;

Length=L;

Width=W;

Height=H;

}

Desk2(intL,intW,intH)//构造函数

{

Color="Red";

Length=L;

Width=W;

Height=H;

}

StringgetColor(){returnColor;}

intgetLength(){returnLength;}

intgetWidth(){returnWidth;}

intgetHeight(){returnHeight;}

voidsetColor(StringC){Color=C;}

voidsetDimension(intL,intW,intH)

{

Length=L;

Width=W;

Height=H;

}

//计算桌子的体积

intVolume()

{

returnLength*Width*Height;

}

voidDeskMessage(Graphicsg,intx,inty)

{

g.drawString("桌子的颜色:

"+Color,x,y);//调用各个属性

g.drawString("桌子的长度:

"+Length,x,y+15);

g.drawString("桌子的宽度:

"+Width,x,y+30);

g.drawString("桌子的高度:

"+Height,x,y+45);

}

}

//该类声明了一个Desk2对象

publicclassDeskClass2extendsjava.applet.Applet

{

publicvoidpaint(Graphicsg)

{

Desk2MyDesk=newDesk2("Red",23,34,25);

intvol;

vol=MyDesk.getLength()*MyDesk.getWidth()*MyDesk.getHeight();

g.drawString("体积是:

"+MyDesk.Volume(),25,20);//调用函数求体积

g.drawString("体积是:

"+vol,25,40);

MyDesk.DeskMessage(g,160,20);

MyDesk.setColor("Yellow");//设置颜色为黄色

MyDesk.setDimension(10,11,12);

g.drawString("体积是:

"+MyDesk.Volume(),25,100);

MyDesk.DeskMessage(g,160,100);

Desk2Desk=newDesk2();

Desk.DeskMessage(g,300,20);

}

}

EX8:

(java实验指导P845.19)难度等级:

B

编写一个Applet实现一个圆。

Point类的对象,有两个属性x,y,代表横纵坐标。

importjava.awt.*;

classMyCircle

{

publicPointm_pCenter;//圆心的坐标

publicdoublem_dRadius;//圆的半径

MyCircle(Pointp,doubler)//构造函数

{

m_pCenter=p;

m_dRadius=r;

}

PointgetCenter()

{

returnm_pCenter;

}

doublegetRadius()

{

returnm_dRadius;

}

doublecalculatePerimeter(doubler)//计算周长。

{

return2*r*Math.PI;

}

doublecalculateArea(doubler)//计算面积。

{

returnMath.PI*r*r;

}

}

publicclassCircleDemo

{

publicstaticvoidmain(Stringargs[])

{

doublerad=30.0,perimeter,area;

Pointpoint=newPoint(100,100);

MyCirclecircle=newMyCircle(point,rad);

perimeter=circle.calculatePerimeter(rad);

area=circle.calculateArea(rad);

System.out.println("Thiscircleperimeter:

"+perimeter+"\narea:

"+area);

}

}

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1