欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    10面向对象程序设计实验指导书Word文档格式.docx

    • 资源ID:6811700       资源大小:27.35KB        全文页数:18页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    10面向对象程序设计实验指导书Word文档格式.docx

    1、3使用java.lang.Math 类,生成100个099之间的随机整数,找出它们之中的最大者及最小者,并统计大于50的整数个数。 4创建一个二维数组,初始化为每名学生的四门课程成绩,计算每名学生的总成绩并按总成绩排序并输出每名学生的成绩。5编写程序翻转输出此字符串:Hello World!三、实验指导1配置path路径,使得在任意路径下,javac,java 等命令均为可识别的命令。我的电脑属性高级环境变量系统变量java_home= C:Program FilesJavajdk1.6.0_20(新建)path: %java_home%bin(添加)也可以直接在path中添加:C:Progr

    2、am FilesJavajdk1.6.0_20bin2配置Editplus:打开EditPlus,单击菜单中的“工具”,选择“配置用户工具”,在弹出的“参数选择”窗口中,单击按纽“添加工具”,在弹出的菜单中选择“新用户程序”,在“组和工具项目”中,设置如下:菜单名字:javac命令:D:j2sdk1.4.2_04binjavac.exe(此为本机上安装的jdk目录)参数:$(FileName)初始目录:$(FileDir);选中“捕获输出”。同样道理“添加工具”,设置如下:javaj2sdk1.4.2_04binjava.exe$(FileNameNoExt)$(FileDir)3参考:(1)

    3、当在目录d:运行HelloWorld时,考虑配置环境变量。环境变量的配置:我的电脑属性高级环境变量系统变量添加名为classpath的环境变量,并设置值为HelloWorld类所在的路径。另可考虑javac -classpath(2)类名为“Factorial,添加一个计算阶乘的方法factorial(int i),考虑一个数的阶乘会很大,超过int的范围,将此方法的返回值定义为long型。此外,由于需要在main方法中直接调用该方法,需要将此方法定义为static型。计算阶乘使用递归,如if(i!=1) return factorial(i-1)*i;else return 1;也可使用循环

    4、来实现。最好都实现。3 使用Math.random()方法来生成随机数,由于此方法生成01之间的随机小数,故需要用100*Math.random()来生成099之间的一个随机数,并且需要用强制转换成整(int)(100*Math.random()。可先生成两个随机整数,并任意赋给代表最大值的变量maxRandom和代表最小值的变量minRandom,比较它们之间的大小,较大者赋给maxRandom,较小者赋给minRandom。然后在一个98次的循环体中,每生成一个随机数,放入先定义好的整数数组中,并与maxRandom和minRandom进行比较,若大于maxRandom,则maxRando

    5、m被此值所替代,若小于minRandom,则minRandom被此值所替代。并判断此值是否大于50,是则将用于计数的变量count增1。4 可预先定义两个变量maxStudent和maxCourse分别记录学生数和课程数量,这里课程数为4。定义一个二维数组int score=new intmaxStudent;,每一行代表某一个学生的4门课成绩。作为实验之用,可利用一个嵌套循环,利用随机数生成的办法,初始化该二维数组。内循环体中,每生成一个随机数,便进行分数的统计,内循环结束,将该名学生的总成绩放入此行的最后一个元素中。提高:(1)利用数据结构中所学的任一种排序,如冒泡法,进行排序输出,任何一

    6、种排序方法中,只需要比较每行的最后一个元素来进行行与行的交换。(2)本例也可以参考第1章中的示例程序,利用键盘输入的方法初始化此二维数组。5 用两种方法实现。(1)使用String类的方法,利用循环来实现(2)使用StringBuilder类,仅仅利用一个方法就可实现实验二类与对象掌握类的定义,对象的创建,掌握构造函数,封装,static 关键字1创建一个Vehicle的类,其UML class Diagram如下图所示(其中max_Load和load的单位为kg):Vehicle+load:double+maxLoad:+Vehicle(max_Load:double)+getLoad():

    7、+getMaxLoad(): 编写一个TestVehicle.java程序,使得程序输出为:creating a vehicle with a 10,000kg maximum load.Add box #1(500kg)Add box #2(250kg)Add box #3(5000kg)Add box #4(4000kg)Add box #5(300kg)Vehicle load is 10050.0kg 2修改Vehicle类,其UML class Diagram如下图所示:-load:-maxLoad:+addBox(weight:double):boolean 其中,addBox()

    8、方法中要检测是否超载,即是否已经超过max_Load,如果超过,该box不能被添加,方法返值为false,否则添加进去,并返值为true。修改TestVehicle.java程序,使得程序输出为:Vehicle load is 9750.0kg3创建一个类,如下图所示:Count-counter:int=0-serialNumber:int+Count()+getTotalCount() 其中,counter记录所创建的对象的个数,每次创建一个对象时,其序列号serialNumber为其创建的序号。设计测试类Count的程序,不使用Count的实例而直接调用getTotalCount()程序输

    9、出如下:Number of counter is 0Number of counter is 1Number of counter is 24创建一个二维对象数组,数组中的每个元素为一个学生类的实例,学生类的UML图为:其中,属性score数组的内容同实验一的第4小题,分数的处理可定义。Student-ID:String-name:-scoreMAXLENGTH:float+Student(ID:String,name:String)+getID():+getName():+setID(String id):void+setName(String name):三、实验步骤:(1)单击菜单中的“

    10、文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类Vehicle(2)为类Vehicle按照UML图定义公有成员变量load,maxLoad以及带一个参数的构造函数,在构造函数体中对maxLoad进行初始化。(3)为类Vehicle按照UML图定义公有成员函数getLoad()和getMaxLoad(),分别返回成员变量load和maxLoad的值。(4)定义测试类TestVehicle,在main方法中编写代码,实现题目所要求的输出:可以创建一个Vehicle类的实例,利用System.out.println进行提示输出,每加一个box,增加该实例的成员变

    11、量load。(5)保存为“TestVehicle.java”的文件。(6)单击菜单中的“工具”,单击“javac“编译此代码,若无误,在“输出窗口”区显示“输出完成(耗时3秒)正常终止”。若有误,双击错误提示语句,在程序编辑区光标会自动跳转到有错误的行,检查程序。记录编译错误提示语句,并写出错误原因及解决方法。(7)单击菜单中的“工具”,单击“java”执行代码,若无误,会在“输出窗口”区显示所要求的输出结果。若输出有误,检查程序。记录运行错误提示语句,并写出错误原因及解决方法。2 (1)单击菜单中的“文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类Veh

    12、icleUpdate(为与实验一区分开来)(2)为类Vehicle按照UML图定义私有成员变量load,maxLoad以及带一个参数的构造函数,在构造函数体中对maxLoad进行初始化。(4)为类Vehicle增加一个成员方法addBox(),在此方法体中,对load进行增加,增加的量为addBox()方法的形参值,并作判断,是否load在添加之后超过了maxLoad所规定的量,若超过,将刚增加的量立即减去,并返回假,否则返回真。(5)定义测试类TestVehicleUpdate,在main方法中编写代码,实现题目所要求的输出:可以创建一个VehicleUpdate类的实例,利用System.

    13、out.println进行提示输出,每加一个box,调用addBox()方法增加该实例的成员变量load。(6)保存为“TestVehicleUpdate.java”的文件。(7)单击菜单中的“工具”,单击“javac“编译此代码,若无误,在“输出窗口”区显示“输出完成(耗时3秒)正常终止”。(8)单击菜单中的“工具”,单击“java”执行代码,若无误,会在“输出窗口”区显示所要求的输出结果。3 (1)单击菜单中的“文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类Count(2)为类Count按照UML图定义私有成员变量counter,并声明为static

    14、型,定义私有成员变量serialNumber,以及无参的构造函数,在构造函数体中,对counter进行增1运算,同时将counter的值赋给serialNumber,以实现题目所要求的“counter记录所创建的对象的个数,每次创建一个对象时,其序列号serialNumber为其创建的序号”(3)为类Count定义成员方法getTotalCount(),在此需声明为static型,以实现题目所要求的“不使用Count的实例而直接调用getTotalCount()”进行输出(3)定义测试类TestCount,在main方法中编写代码,实现题目所要求的输出:可以创建两个VehicleUpdate类

    15、的实例,利用System.out.println进行提示输出,在输出中,利用Count.getTotalCount()来返回所创建对象的个数。(4)保存为“TestCount.java”的文件。(5)单击菜单中的“工具”,单击“javac“编译此代码,若无误,在“输出窗口”区显示“输出完成(耗时3秒)正常终止”。(6)单击菜单中的“工具”,单击“java”执行代码,若无误,会在“输出窗口”区显示所要求的输出结果。4 (1)单击菜单中的“文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类Student。(2)为类Student按照UML图定义私有成员变量ID,

    16、name,以及一维数组score。(3)为类Student定义带三个参数的构造函数,ID,name分别用于初始化学生的ID号以及name。在构造函数体中,使用maxCourse的大小来创建score数组,并利用随机数生成的办法初始化此数组(方法同实验一的第4题),并计算总分。同实验一的第4题,本例也可以在学习了输入输出流后,利用键盘输入的方法初始化此二维数组。(4)为类Student定义分别取得和设置name,ID,的方法getName(),getID(),setName(),setID()以及返回score数组的方法getScore()(5)定义测试类TestStudentArray,在ma

    17、in方法体中,创建一个对象数组,对数组的每一个对象元素,使用new进行对象的创建,其参数自行指定,其中学生的数目和课程的数目可以定义两个变量maxStudent和maxCourse来确定,maxStudent任意指定,maxCourse按照题目要求指定为4。利用Student类提供的成员方法输出排序前的学生ID,姓名以及各科成绩,利用任意一种排序方法进行总成绩的排序,在排序方法中,比较的是每个学生对象的属性score数组的最后一个元素(总分)的值,交换的是每一个对象元素,也即一维数组的每一个元素。最后同排序前的方法进行排序后的输出。(6)保存文件名为TestStudentArray.java。

    18、实验三继承与多态掌握继承、方法重载,方法覆盖,抽象类和接口、super和this关键字,包机制1 创建类Employee和类Manager,如下图所示:Employee+name:String=” “+salary:+birthDate:Date+getDetails():Manager+department: 在Employee类中的getDetails()方法输出名字和工资;在Manager类中实现方法覆盖,输出名字、工资及所在部门。2 修改为类Employee,创建三个构造函数,第一个带一个参数,用以初始化名字;第二个带二个参数,用以初始化名字和工资;第三个带三个参数,初始化名字、工资和

    19、出生日期,实现构造函数的重载。3 在第2题的基础上,修改Manager类,创建三个构造函数,第一个带一个参数,用以初始化部门;第二个带二个参数,用以初始化名字和部门;第三个带三个参数,用以初始化名字、工资和部门;第四个带四个参数,用以初始化名字、工资、出生日期及部门。练习this和super关键字的应用。4 创建一个目录,名为banking,类Account(如下图所示)放在banking包中,Account-balance:+Account(init balance :+getBalance():+deposit(amt:+withdraw(amt: 建立一个测试程序TestBanking.

    20、java,放在缺省包中,完成功能为:创建一个账户,初始化balance,并做几单简单的交易,最后显示交易后的balance,要求程序运行结果如下:Creating an account with a 500.00 balance.Withdraw 150.00Deposit 22.50Withdraw 47.62The account has a balance of 324.88三、实验步骤1 (1)单击菜单中的“文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类Employee。为类Student按照UML图定义protected的成员变量name,sa

    21、lary和birthDate,以及公有成员方法getDetails(),此方法用于输出name,salary和birthDate。(2)定义类Manager,继承Employee,增加一个成员变量department,并覆盖getDetails()方法,用于输出name,salary,birthDate和department。在getDetails()方法体中使用super关键字调用父类的getDetails()方法,以避免重复代码进行输出name,salary,birthDate。(3)定义测试类TestEmployeeManager,创建一个Manager实例,调用getDetails()

    22、方法进行输出。(4)保存为TestEmployeeManager.java(1)同第1题(1),并增加三个构造函数,进行构造函数的重载。在构造函数体中,利用this关键字调用本类的另外的构造函数。其余步骤同第1题。(1)同第2题(2)同第1题(2),并增加四个构造函数,进行构造函数的重载。在构造函数体中,使用super关键字调用父类的构造函数。其余步骤同第1题(1)单击菜单中的“文件”,选择“新建”,在弹出的菜单中选择“JAVA”,出现java程序编辑区域,定义类为Account(2)为类Account定义私有成员变量balance,初始化balance的构造函数,以及成员方法getBalan

    23、ce()(返回balance的值),deposit()(存入amt,balance的值增加amt),withdraw()(取出amt,balance的值减少amt)(3)保存为Account.java。使用javac d . Account.java来编译,或者在EditPlus中再配置一个工具,javac -d-d . $(FileName) 则会自动在当前目录下创建一个banking子目录,类文件存于此子目录下。(3)定义测试类TestBanking,引入banking.Account类,创建一个Account的实例,调用其成员方法进行存入取出,最后输出。保存为TestBanking.ja

    24、va。注意,如果import banking.*,则Account.java文件不能和TestBanking.java文件放在同一路径下。但如果是import banking.Account,则无此限制。(4)运行输出。记录此过程中出现的总是,并记录解决的方法。实验四 综合应用基于MVC框架进行java web编程掌握MVC框架进行java web编程的基本原理创建一个web程序,主页面是登录页面,输入用户名和密码后,与数据库中的记录进行比较,用户名和密码正确,即显示该用户名登录成功,否则显示该用户名登录失败。基于Myeclipse环境,使用mysql数据库(1)新建web project(2

    25、)View层代码:登录页面login.jsp,内容为:输入用户名和密码登录成功页面main.jsp,内容为:提示该用户名登录成功登录失败页面:register.jsp,内容为:提示该用户名登录失败(3)Controller层代码:LoginServlet.java: 用来处理从view传来的用户请求,将请求发给业务逻辑代码LoginHandler处理处理完成后,再将处理结果交由view显示(4)Model层代码LoginHandler.java:业务处理逻辑代码,与数据库交互,判断用户名和密码是否一致。DBPool.java:用来进行数据库连接db.properties:数据库连接属性文件。(5) 配置web.xml (6)布署到tomcat服务器 (7)浏览器下运行,测试。附参考代码:login.jsp: UserName: Password:passwordsubmit value=Submit/formmain.jsp%=session.getAttribute() % lo


    注意事项

    本文(10面向对象程序设计实验指导书Word文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开