ﻩintl=math[i];
ﻩﻩmath[i] =math[j];
math[j]= l;
ﻩﻩﻩﻩ}
}
ﻩﻩ}
ﻩfor(int i=0;i<10;i++){
ﻩSystem.out.print(math[i]+"");
ﻩ}
}
}
4. 随机产生20个50~100间的整数,输出这20个数并找出最大数及最小数输出。
publicclass TestMath{
public staticvoidmain(Stringargs[]){
intmath[] =new int[20];
ﻩint max =0;intmin=100;
ﻩﻩfor(inti =0;i<20;i++){
ﻩmath[i] =(int)(Math.random()*50+50);
ﻩSystem.out.print(math[i]+"");
ﻩ}
ﻩSystem.out.println();
for(inti=0;i<20;i++){
ﻩﻩ
ﻩﻩmax= max>math[i]?
max:
math[i];
ﻩmin= min<math[i] ?
min:
math[i];
ﻩﻩ}
System.out.println("max:
"+max);
System.out.println("min:
"+min);
}
}
5.试编写程序,实现求几何形状(长方形、正方形、圆形)的周长、面积。
(可任选其一)
importjava.util.Scanner;
publicclass Test{
ﻩpublic staticvoidmain(Stringargs[])throws Exception{
Scanneris =new Scanner(System.in);
ﻩSystem.out.println("请输入长方形的宽");
inta = is.nextInt();
ﻩﻩSystem.out.println("请输入长方形的高");
intb=is.nextInt();
ﻩﻩSystem.out.println("输入1求出周长,输入2求出面积,输入三求出周长与面积");
ﻩﻩint c =is.nextInt();
ﻩif(c ==1){
ﻩSystem.out.println("周长"+(a+b)*2);
ﻩ}elseif(c==2){
ﻩSystem.out.println("面积"+a*b);
ﻩﻩ}elseif(c==3){
ﻩSystem.out.println("周长"+(a+b)*2+",面积"+a*b);
ﻩ}else{
ﻩSystem.out.println("输入有误,退出");
ﻩ}
ﻩ}
}
6.验证书中的例题。
三、试验要求
1、预习试验内容并写出上机报告。
2、实验中出现的问题及实验体会。
实验三面向对象的程序设计
(一)
一、实验目的
1.熟悉类的创建方法。
2.掌握对象的声明与创建。
3.能利用面向对象的思想解决一般问题。
二、实验内容
1.以下程序能否通过编译?
上机验证并指明错误原因与改正方法
Class Location{
Privateintx,y;
Public voidLocation(inta,intb)
{X=a;y=b;}
PublicintgetX(){return x;}
Public intgetY(){return y;}
Publicstaticvoidmain(Stringargs[]){
Locationloc=new Location(12,20);
System.out.println(loc.getX());
System.out.println(loc.getY()); }
2. 创建一个图书类,类中包含的属性有:
书名、作者、出版社;包含的方法有:
设置书籍状态,查看书籍状态。
书籍状态有在馆和外借两种。
publicclassLib{ﻩ//创建一个图书类,类中包含的属性有:
书名、作者、出版社;包含的方法有:
设置书籍状态,查看书籍状态。
书籍状态有在馆和外借两种。
ﻩ//
ﻩprivateString Bname;
privateStringAname;
private String Baddress;
ﻩ//书籍状态
ﻩprivatebooleanzt;
ﻩ//包含方法setget
ﻩpublicvoidsetzt(booleanzt){
ﻩthis.zt=zt;
}
publicbooleangetzt(booleanzt){
ﻩreturn zt;
}
ﻩ
ﻩpublicstaticvoidmain(String[]args){
ﻩ}
}3.设计一个Birthday类,其成员变量有:
year,month,day;提供构造方法、输出Birthday对象值的方法和计算年龄的方法。
编写程序测试这个类。
publicclassBirthday{
ﻩ//设计一个Birthday类,其成员变量有:
year,month,day;提供构造方法、输出Birthday对象值的方法和计算年龄的方法。
编写程序测试这个类。
privateint year;
ﻩprivateintmonth;
ﻩprivateintday;
publicBirthday(intyear,intmonth,intday){
ﻩﻩthis.year=year;
ﻩthis.month=month;
ﻩthis.day=day;
ﻩ}
ﻩpublicvoidprintBirthDay(){
ﻩSystem.out.println(year+"-"+month+"-"+day);
}
ﻩpublicintprintAge(){
ﻩreturn2012-year;
}
publicstaticvoidmain(String[] args){
ﻩ}
}4.(选作)编写一个学生和教师数据输入和显示程序,学生数据有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。
要求将编号、姓名输入和显示设计成一个类Person,并作为学生数据操作类Student和教师数据操作类Teacher的基类。
publicclassPerson{//定义Person类
public intbianhao;
publicString name;
publicPerson(intbiaohao,Stringname){
ﻩthis.bianhao=bianhao;
ﻩthis.name=name;
ﻩ}
ﻩpublic voidinput(int bianhao,Stringname){
ﻩthis.bianhao=bianhao;
ﻩthis.name=name;
ﻩ}
ﻩpublicvoidprintXS(){//定义显示(这边有点疑问)
ﻩSystem.out.println(bianhao+""+name);
}
ﻩpublicstaticvoid main(String[]args){
ﻩﻩ
}
}
class Student extendsPerson{//定义学生类
intbanhao;
ﻩintchengji;
ﻩprivateStudent(intbianhao,Stringname,intbanhao,int cj){
super(bianhao,name);
ﻩthis.banhao=banhao;
ﻩthis.chengji=cj;
}
}
class TeacherextendsPerson{//定义教师类
Stringzhicheng;
ﻩStringbumen;
ﻩprivateTeacher(intbianhao,Stringname,Stringzhicheng,Stringbumen){
ﻩsuper(bianhao,name);
this.bianhao=bianhao;
ﻩthis.name=name;
ﻩthis.zhicheng=zhicheng;
ﻩthis.bumen=bumen;
}
}
5.验证书中的例题。
三、实验要求
1.事先预习,写出预习报告
2.上机后写出实验报告
实验四面向对象的程序设计
(二)
一、实验目的
1.熟悉类的定义
2.掌握对象的声明、实例化及成员的引用
3.掌握构造方法及实例方法的区别与用法
二、实验内容
1.编写一个类,描述汽车,其中用字符型描述车的牌号,用浮点型描述车的价格。
编写一个测试类,其中有一个修改价格的方法,对汽车对象进行操作,根据折扣数修改汽车的价格,最后在main()方法中输出修改后的汽车信息。
classCar{
ﻩStringchePai;
ﻩfloatprice;
floatprice1;
ﻩCar(StringchePai,float price){
ﻩﻩthis.chePai=chePai;
ﻩthis.price1=price*4/5;
this.price=price;
}
void dismessage(){
System.out.println("这辆车的品牌是"+chePai+"原价是"+price+"打折后为"+price1);
}
}
publicclassTestCar{
ﻩpublic static voidmain(String[]args){
ﻩCarc=newCar("奔驰S6OO",50000);
ﻩc.dismessage();
ﻩ}
}
2.设计一个银行帐户类,成员变量包括账号、储户姓名、开户时间、身份证号码、存款余额等帐户信息,成员方法包括存款、取款操作。
publicclass Test{
publicstatic voidmain(String args[]){
ﻩﻩBankb1 =newBank("鹿鹿","鹿容","2012-04-30",1,0.0);
ﻩﻩb1.cun(100000.00);b1.qu(10000.00);b1.info();
ﻩ}
}
classBank{
ﻩprivateStringuser;
ﻩprivateStringname;
privateStringtime;
ﻩprivateintid;
ﻩprivatedoublemoney;
Bank(Stringuser,String name,Stringtime,int id,double money){
ﻩthis.user=user;this.name =name;this.time =time;this.id=id;this.money =money;
}
publicvoidcun(doubleinMoney){
money= money+inMoney;
}
ﻩpublicvoidqu(doubleoutMoney){
if(money-outMoney>=0){
money=money-outMoney;
ﻩ}
}
ﻩpublicvoidinfo(){
System.out.println("余额还有"+money);
ﻩ}
}
3. 编写一个java程序,设计一个汽车类Vehicle,包含的属性有车轮的个数wheels和车重weight。
小汽车类Car是Vehicle的子类,包含的属性有载人数loader。
卡车类Truck是Car类的子类,其中包含的属性有载重量payload。
每个类都有构造方法和输出相关数据的方法。
publicclass Vehicle{
intwheels;
doubleweights;
ﻩVehicle(int wheels,doubleweights){ﻩ//这是构造方法
ﻩthis.wheels=wheels;
ﻩﻩthis.weights=weights;
ﻩ}
ﻩvoiddisMessage(){
ﻩﻩSystem.out.println("这个车车轮个数是"+wheels+"重量是"+weights+"斤");
}
public static void main(String[]args){
ﻩﻩVehiclev=newVehicle(8,10.00);
ﻩsmallCarc=new smallCar(6);
ﻩﻩTruckt=new Truck(10);
ﻩﻩv.disMessage();
c.disM();
t.disM2();
ﻩt.disM3();
}
}
classsmallCarextendsVehicle{
int loader;
smallCar(intloader){
ﻩsuper(8,10.00);
ﻩthis.loader=loader;
}
ﻩvoiddisM(){
ﻩSystem.out.println("这个小汽车可载"+loader+"人");
}
}
class TruckextendssmallCar{
int payload;
Truck(intpayload){
super(6);
ﻩthis.payload=payload;
ﻩ}
ﻩvoiddisM2(){
ﻩSystem.out.println("这卡车载重为"+payload+"kg");
ﻩ}
voiddisM3(){
ﻩSystem.out.println("这卡车有"+wheels+"个轮子"+"车重有"+weights+"斤"+"可载"+loader+"人"+"载重为"+payload+"斤");
ﻩ}
}
4.验证书中的例题。
三、实验要求
1.事先预习,写出预习报告
2.上机后写出实验报告
实验五 面向对象综合实验
一、实验目的
1.熟悉类的定义;
2.掌握对象的声明、实例化及成员的引用;
3.掌握构造方法及实例方法的区别与用法。
二、实验内容
多数用户对去银行办理存款、取款等业务并不默生,用户自然感觉到了通过计算机办理业务的方便、快捷,也自然对编写出银行系统程序的程序员发出由衷的敬意。
实际上,当我们具备了面向对象编程的知识以后,我们也能编写出相应的程序。
程序框架如下,将代码补充完整:
2.设计一个银行帐户类,成员变量包括账号、储户姓名、开户时间、身份证号码、存款余额等帐户信息,成员方法包括存款、取款操作。
packagebank; ﻩﻩﻩ//创建程序包
importjava.util.*;ﻩﻩﻩ//引入程序包
classBankCount ﻩﻩﻩﻩ//定义类
{ﻩintid;
String name,date;
ﻩfloatmoney;
ﻩpublicBankCount(int id,Stringname,String date,floatmoney) //构造方法
{//方法体
ﻩthis.id=id;
ﻩthis.name=name;
this.date=date;
ﻩthis.money=money;
ﻩ}
}
classBCOption
{ﻩVectorvec=newVector(); //对象声明与实例化
staticint count=0; //类中静态变量的定义
publicvoidkaihu(BankCountbc) //方法体,实现开户功能 //实例方法
{
count++;
vec.add(bc);
}
public void moneyOut(int id, floatoutmoney)//方法体,实现取钱功能
{
BankCountbc =(BankCount)vec.get(id);
bc.money -=outmoney;
vec.set(id,bc);
}
publicvoid moneyIn(int id,floatinmoney)
{//方法体,实现存钱功能
BankCountbc=(BankCount)vec.get(id);
bc.money+=inmoney;
vec.set(id,bc);
}
public voidquery(intid)
{//方法体,查询并输出账户信息
BankCount bc=(BankCount)vec.get(id);
System.out.println(bc.id+""+bc.name+""+bc.date+" "+bc.money);
}
publicstaticvoidmain(String args[])
{//实现账户的相关操作
BCOptionbco=newBCOption();
bco.kaihu(newBankCount(1,"","",12));
bco.query(0);
} }
三、实验要求
1、根据题目要求完成程序中没有完成的模块。
2、写好上机报告。
实验六异常处理
一、实验目的
1.熟悉异常的抛出与捕获的含义;
2.掌握异常捕获与处理的方法;
3.能自定义异常。
二、实验内容
现在多数学校的成绩管理都由计算机进行管理,这就需要有相应的应用程序。
编写成绩管理应用程序,其中有成绩录入模块,成绩录入过程中,难免出现录入数据的类型出现错误,或录入的成绩不在合理的范围。
在成绩录入过程中,若出现上述错误,程序应该如何处理。
程序框架如下,将代码补充完整:
importjavax.swing.JOptionPane;
class负分异常extendsException //当录入了负分时。
此处应用了自定义异常
{
ﻩ负分异常(inti){
ﻩSystem.out.println("分数为负数");
}
}
class高分异常extendsException //当录入分超过100时。
应用了自定义异常
{
ﻩ高分异常(inti ){
System.out.println("分数过高");
}
ﻩ
}
publicclassExceptionDemo
{
ﻩstatic finalintnumber=2;
ﻩintscore[]=new int[number];
ﻩp