实验2信息133魏达013272.docx

上传人:b****1 文档编号:2395755 上传时间:2022-10-29 格式:DOCX 页数:22 大小:412.74KB
下载 相关 举报
实验2信息133魏达013272.docx_第1页
第1页 / 共22页
实验2信息133魏达013272.docx_第2页
第2页 / 共22页
实验2信息133魏达013272.docx_第3页
第3页 / 共22页
实验2信息133魏达013272.docx_第4页
第4页 / 共22页
实验2信息133魏达013272.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

实验2信息133魏达013272.docx

《实验2信息133魏达013272.docx》由会员分享,可在线阅读,更多相关《实验2信息133魏达013272.docx(22页珍藏版)》请在冰豆网上搜索。

实验2信息133魏达013272.docx

实验2信息133魏达013272

实验2面向对象编程(Partone)

实验目的

掌握Java程序面向对象编程的基本架构,会运用面向对象的思想编写Java程序。

信息133魏达2013013272

实验题1阅读如下程序,完成思考题。

classCCircle

{doublepi;

doubleradius;

doublegetRadius()

{returnradius;

}

voidsetCircle(doubler,doublep)

{pi=p;

radius=r;

}

}

publicclassEx2_1

{publicstaticvoidmain(Stringargs[])

{CCirclecir1=newCCircle();

cir1.setCircle(2.0,3.1416);

System.out.println("radius="+cir1.getRadius());}

}

[基本要求]运行程序并观察运行结果。

[思考问题]试述程序中主要语句的作用。

运行结果:

radius=2.0

主要语句的作用:

classCCircle

{doublepi;

doubleradius;//变量声明

doublegetRadius()//方法定义

{returnradius;

}

voidsetCircle(doubler,doublep)//方法定义

{pi=p;

radius=r;

}

}

publicclassEx2_1

{

publicstaticvoidmain(Stringargs[])

{CCirclecir1=newCCircle();//创建对象

cir1.setCircle(2.0,3.1416);//调用方法

System.out.println("radius="+cir1.getRadius());}//输出结果

}

 

实验题2设计一个用来描述汽车的类Car,使用类的非静态成员变量来表示汽车的车主姓名name、当前的速率speed:

1.创建构造函数为成员变量赋初值。

2.使用类的非静态成员方法来表示改车主姓名changeName操作,并通过该方法显示修改后的车主名称。

3.使用类的非静态成员方法来表示改变汽车的速率changSpeed操作,并通过该方法显示修改后的车速。

4.使用类的非静态成员方法来表示停车stop操作,并通过该方法显示停车后的车速。

5.创建一个Car类的对象,初始状态时,车主名称是自己的名字,speed=0。

6.分别调用这三个方法,更改车名为朋友的名字,车速为20,停车车速为0,并且得到如下的结果:

publicclassTest2{

publicstaticvoidmain(String[]args){

Carcar=newCar();

car.setName("好友");

car.setSpeed(20);

System.out.println("当前速度为:

"+car.getSpeed());

System.out.println("车主为:

"+car.getName());

System.out.println("停车后,车速为:

"+car.stop());

car.changName("好人啊");

car.changSpeed(50);

System.out.println("当前速度为:

"+car.getSpeed());

System.out.println("车主为:

"+car.getName());

System.out.println("停车后,车速为:

"+car.stop());

}

}

classCar{

Stringname;

doublespeed;

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

this.name=name;

}

publicdoublegetSpeed(){

returnspeed;

}

publicvoidsetSpeed(doublespeed){

this.speed=speed;

}

publicStringchangName(Stringname){

this.name=name;

returnthis.name;

}

publicdoublechangSpeed(doublespeed){

this.speed=speed;

returnthis.speed;

}

publicdoublestop(){

speed=0;

returnspeed;

}

}

 

实验题3定义一个类MyProgram,包含两个属性:

一个是private的整型属性data、一个是private的String类型的属性str,封装这两个属性的四个方法setData()和getData()、setStr()和getStr();将这两个属性转变为字符串的方法是toStr()。

编写程序,使用MyProgram类,实现数据的访问和修改,并调用toStr()方法显示该类的属性。

[基本要求]编写完整程序。

[思考问题]试述程序中各个方法的作用。

程序:

publicclassTest3{

publicstaticvoidmain(String[]args){

MyProgramprogram=newMyProgram();

program.setData(20);

program.setStr("bac");System.out.println("getData():

"+program.getData());

System.out.println("getStr():

"+program.getStr());

System.out.println("toStr():

"+program.toStr());

}

}

classMyProgram{

privateintdata;

privateStringstr;

publicvoidsetData(intdata){

this.data=data;

}

publicintgetData(){

//System.out.println(""+data);

returndata;

}

publicvoidsetStr(Stringstr){

this.str=str;

}

publicStringgetStr(){

returnstr;

}

publicStringtoStr(){

Stringstr_one;

str_one=str+data;

returnstr_one;

}

}

程序中各个方法的作用:

setData():

设置data属性

getData():

获取data属性

setStr():

设置str属性

getStr():

获取str属性

toStr():

将data和str转换为字符串

实验题4定义一个类实现银行帐户的概念,包括的变量有"帐号"和"存款余额",包括的方法有"存款"、"取款"、"查询余额"和”显示帐号”。

定义主类,创建帐户类的对象,并完成相应操作。

提示:

关键代码如下:

publicintgetleftmoney(){

returnleftmoney;

}

publicvoidsavemoney(doublemoney){

leftmoney+=money;

}

publicvoidgetmoney(doublemoney){

if(money<=leftmoney)

leftmoney-=money;

else

System.out.println("只能取:

"+leftmoney);

}

bankaccountba=newbankaccount(888123,1000);

ba.savemoney(21000);

System.out.println("存入21000元后余额为:

"+ba.getleftmoney());

ba.getmoney(11500);

System.out.println("11500元后余额为:

"+ba.getleftmoney());

程序:

publicclassTest4{

publicstaticvoidmain(String[]args){

BankAccountba=newBankAccount(888123,1000);

ba.savemoney(21000);

System.out.println("存入21000元后余额为:

"+ba.getleftmoney());

ba.getmoney(11500);

System.out.println("取款11500元后余额为:

"+ba.getleftmoney());

}

}

classBankAccount{

privateintleftmoney;

privateintaccount;

publicintgetAccount(){

returnaccount;

}

publicintgetleftmoney(){

returnleftmoney;

}

publicvoidsavemoney(doublemoney){

leftmoney+=money;

}

publicvoidgetmoney(doublemoney){

if(money<=leftmoney){

leftmoney-=money;

}else{

System.out.println("只能取:

"+leftmoney);

}

}

BankAccount(intaccount,intleftmoney){

this.account=account;

this.leftmoney=leftmoney;

}

}

 

实验题5对象的组合。

现有一个Rectangle类,请设计一个柱形类Cuboid。

1.此类具有两个成员变量,

(1)Rectangle类型的成员变量rect(长方体以长方形做底)和

(2)height(柱形的高)。

2.此类应具有构造方法。

3.

(1)此类应具有求面积的方法getVolme()。

(2)此类应具有设置和获得底的长度和宽度的方法:

getBottomWidth(),

setBottomWidth(),

getBottomLength(),

setBottomLength()。

Rectangle的代码如下:

publicclassRectangle{

doublewidth,length;

publicvoidsetWidth(doublew){

if(

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

当前位置:首页 > 农林牧渔 > 水产渔业

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

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