欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    java程序设计——基于JDK6和NetBeans实现第4章课后作业答案(共12页).doc

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

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

    java程序设计——基于JDK6和NetBeans实现第4章课后作业答案(共12页).doc

    精选优质文档-倾情为你奉上第4章 Java面向对象高级特性1. 指出下面程序中出现编译错误的行数及其原因。01. public class Outer 02. private class Inner 03. static String name=new String("Inner");04. public void method()05. System.out.println(name);06. 07. 08. public static void main(String args) 09. Inner a=new Outer().new Inner();10. a.method();11. 12. 上述代码中第3行会出现编译错误,内部类Inner中的成员变量不能定义为static。2. 请完成下面程序,使得程序可以输出枚举常量值:RED、GREEN和BLUE。01. public class Ball 02. public enum T 03. RED, GREEN, BLUE 04. 05. public static void main(String args) 06. Ball.T t=Ball.T.values();07. for(int i=0;i<t.length;i+) 08. System.out.println(ti);09. 10. 11. 3. 请完成下面程序,使得程序可以输出"hi"。01. public class Car 02. private class Engine 03. Engine() 04. drive(); 05. 06. 07. public static void main(String args) 08. new Car().go();09. 10. void go() 11. new Engine();12. 13. void drive() 14. System.out.println("hi");15. 16. 4. 应用抽象类及继承编写程序,输出本科生及研究生的成绩等级。要求:首先设计抽象类Student,它包含学生的一些基本信息:姓名、学生类型、三门课程的成绩和成绩等级等。其次设计Student类的两个子类:本科生类Undergraduate和研究生类Postgraduate,二者在计算成绩等级时有所区别,具体计算标准如表所示。最后创建测试类进行测试。学生成绩等级本科生标准研究生标准平均分85-100:优秀平均分90-100:优秀平均分75-85: 良好平均分80-90: 良好平均分65-75: 中等平均分70-80: 中等平均分60-65: 及格平均分60-70: 及格平均分60以下:不及格平均分60以下:不及格/抽象类Student01. abstract class Student 02. final static int COURSE_COUNT=3;03. private String name;04. private String type;05. private int scores;06. private String grade;07. public Student(String name)08. this.name=name;09. 10. public void setName(String name)11. this.name=name;12. 13. public String getName()14. return name;15. 16. public void setType(String type)17. this.type=type;18. 19. public String getType()20. return type;21. 22. public void setScores(int scores)23. this.scores=scores;24. 25. public int getScores()26. return scores;27. 28. public void setGrade(String grade)29. this.grade=grade;30. 31. public String getGrade()32. return grade;33. 34. public abstract String calculateGrade();35. /本科生类01. public class Undergraduate extends Student02. public Undergraduate(String name,int scores)03. super(name);04. this.setType("本科生");05. this.setScores(scores);06. 07. public String calculateGrade()08. int average;09. int sum=0;10. int scores;11. scores=this.getScores();12. for(int i=0;i<Student.COURSE_COUNT;i+)13. sum+=scoresi;14. 15. average=sum/Student.COURSE_COUNT;16. if(average>=85)17. return "优秀"18. else if(average>=75)19. return "良好"20. else if(average>=65)21. return "中等"22. else if(average>=60)23. return "及格"24. else25. return "不及格"26. 27. /研究生类01. public class Postgraduate extends Student02. public Postgraduate(String name,int scores)03. super(name);04. this.setType("研究生");05. this.setScores(scores);06. 07. public String calculateGrade()08. int average;09. int sum=0;10. int scores;11. scores=this.getScores();12. for(int i=0;i<Student.COURSE_COUNT;i+)13. sum+=scoresi;14. 15. average=sum/Student.COURSE_COUNT;16. if(average>=90)17. return "优秀"18. else if(average>=80)19. return "良好"20. else if(average>=70)21. return "中等"22. else if(average>=60)23. return "及格"24. else25. return "不及格"26. 27. /测试类01. public class StudentTest 02. public static void main(String args)03. Student s=new Student10;04. int scores=new int10Student.COURSE_COUNT;05. for(int i=0;i<5;i+)06. for(int j=0;j<Student.COURSE_COUNT;j+)07. scoresij=(int)(Math.random()*61+40);08. 09. si=new Undergraduate("本科生"+(i+1),scoresi);10. si.setGrade(si.calculateGrade();11. 12. for(int i=5;i<10;i+)13. for(int j=0;j<Student.COURSE_COUNT;j+)14. scoresij=(int)(Math.random()*61+40);15. 16. si=new Postgraduate("研究生"+(i-4),scoresi);17. si.setGrade(si.calculateGrade();18. 19. int c;20. for(int i=0;i<10;i+)21. System.out.print(si.getName()+"t");22. System.out.print(si.getType()+"t");23. c=si.getScores();24. for(int j=0;j<Student.COURSE_COUNT;j+)25. System.out.print(cj+"t");26. 27. System.out.println(si.getGrade();28. 29. 30. 运行结果:本科生1本科生939068良好本科生2本科生768958中等本科生3本科生796690良好本科生4本科生958598优秀本科生5本科生547853及格研究生1研究生836186中等研究生2研究生915785中等研究生3研究生709655中等研究生4研究生437562及格研究生5研究生438061及格5. 应用枚举类编写程序,根据第4题的要求输出本科生及研究生的成绩等级。要求:将学生成绩等级定义成枚举类,其它功能不变,完成类的定义并进行测试。/抽象类01. abstract class Student 02. /枚举类定义03. static enum Grade 04. DISTINCTION("优秀"), 05. MERIT("良好"), 06. AVERAGE("中等"), 07. PASS("及格"), 08. FAIL("不及格");09. private String scoreGrade;10. Grade(String scoreGrade) 11. this.scoreGrade = scoreGrade;12. 13. public String getScoreGrade() 14. return scoreGrade;15. 16. 17. final static int COURSE_COUNT = 3;18. private String name;19. private String type;20. private int scores;21. private Grade sgrade;22. public Student(String name) 23. this.name = name;24. 25. public void setName(String name) 26. this.name = name;27. 28. public String getName() 29. return name;30. 31. public void setType(String type) 32. this.type = type;33. 34. public String getType() 35. return type;36. 37. public void setScores(int scores) 38. this.scores = scores;39. 40. public int getScores() 41. return scores;42. 43. public void setGrade(Grade sgrade) 44. this.sgrade = sgrade;45. 46. public Grade getGrade() 47. return sgrade;48. 49. public abstract Grade calculateGrade();50. /本科生类01. public class Undergraduate extends Student02. public Undergraduate(String name,int scores)03. super(name);04. this.setType("本科生");05. this.setScores(scores);06. 07. public Grade calculateGrade()08. int average;09. int sum=0;10. int scores;11. scores=this.getScores();12. for(int i=0;i<Student.COURSE_COUNT;i+)13. sum+=scoresi;14. 15. average=sum/Student.COURSE_COUNT;16. if(average>=85)17. return Grade.DISTINCTION;18. else if(average>=75)19. return Grade.MERIT;20. else if(average>=65)21. return Grade.AVERAGE;22. else if(average>=60)23. return Grade.PASS;24. else25. return Grade.FAIL;26. 27. /研究生类01. public class Postgraduate extends Student02. public Postgraduate(String name,int scores)03. super(name);04. this.setType("研究生");05. this.setScores(scores);06. 07. public Grade calculateGrade()08. int average;09. int sum=0;10. int scores;11. scores=this.getScores();12. for(int i=0;i<Student.COURSE_COUNT;i+)13. sum+=scoresi;14. 15. average=sum/Student.COURSE_COUNT;16. if(average>=90)17. return Grade.DISTINCTION;18. else if(average>=80)19. return Grade.MERIT;20. else if(average>=70)21. return Grade.AVERAGE;22. else if(average>=60)23. return Grade.PASS;24. else25. return Grade.FAIL;26. 27. /测试类01. public class StudentTest 02. public static void main(String args)03. Student s=new Student10;04. int scores=new int10Student.COURSE_COUNT;05. for(int i=0;i<5;i+)06. for(int j=0;j<Student.COURSE_COUNT;j+)07. scoresij=(int)(Math.random()*61+40);08. 09. si=new Undergraduate("本科生"+(i+1),scoresi);10. si.setGrade(si.calculateGrade();11. 12. for(int i=5;i<10;i+)13. for(int j=0;j<Student.COURSE_COUNT;j+)14. scoresij=(int)(Math.random()*61+40);15. 16. si=new Postgraduate("研究生"+(i-4),scoresi);17. si.setGrade(si.calculateGrade();18. 19. int c;20. for(int i=0;i<10;i+)21. System.out.print(si.getName()+"t");22. System.out.print(si.getType()+"t");23. c=si.getScores();24. for(int j=0;j<Student.COURSE_COUNT;j+)25. System.out.print(cj+"t");26. 27. System.out.println(si.getGrade().getScoreGrade();28. 29. 30. 6. 应用抽象类和接口编写程序,根据第4题的要求输出本科生及研究生的成绩等级。要求:首先设计一个接口,接口中包含用于计算学生成绩等级的抽象方法,设计两个类分别实现上述接口,这两个类分别表示本科生及研究生的成绩等级标准。其次设计抽象类Student及其两个子类本科生类Undergraduate和研究生类Postgraduate,两个子类分别设置各自的成绩等级计算标准。最后创建测试类进行测试。/定义接口01. public interface GradeCalculate 02. public String getGrade(int scores);03. /本科生成绩等级计算标准01. public class UnderGradeCalculate implements GradeCalculate 02. public String getGrade(int scores)03. int average;04. int sum=0;05. for(int i=0;i<Student.COURSE_COUNT;i+)06. sum+=scoresi;07. 08. average=sum/Student.COURSE_COUNT;09. if(average>=85)10. return "优秀"11. else if(average>=75)12. return "良好"13. else if(average>=65)14. return "中等"15. else if(average>=60)16. return "及格"17. else18. return "不及格"19. 20. /研究生成绩等级计算标准01. public class PostGradeCalculate implements GradeCalculate 02. public String getGrade(int scores)03. int average;04. int sum=0;05. for(int i=0;i<Student.COURSE_COUNT;i+)06. sum+=scoresi;07. 08. average=sum/Student.COURSE_COUNT;09. if(average>=90)10. return "优秀"11. else if(average>=80)12. return "良好"13. else if(average>=70)14. return "中等"15. else if(average>=60)16. return "及格"17. else18. return "不及格"19. 20. /抽象类01. abstract class Student 02. final static int COURSE_COUNT=3;03. private String name;04. private String type;05. private int scores;06. private String grade;07. private GradeCalculate criterion;08. public Student(String name)09. this.name=name;10. 11. public void setName(String name)12. this.name=name;13. 14. public String getName()15. return name;16. 17. public void setType(String type)18. this.type=type;19. 20. public String getType()21. return type;22. 23. public void setScores(int scores)24. this.scores=scores;25. 26. public int getScores()27. return scores;28. 29. public void setGrade(String grade)30. this.grade=grade;31. 32. public String getGrade()33. return grade;34. 35. public void setCriterion(GradeCalculate criterion)36. this.criterion=criterion;37. 38. public GradeCalculate getCriterion()39. return criterion;40. 41. /本科生类01. public class Undergraduate extends Student02. public Undergraduate(String name,int scores)03. super(name);04. this.setType("本科生");05. this.setScores(scores);06. this.setCriterion(new UnderGradeCalculate();07. this.setGrade(this.getCriterion().getGrade(scores);08. 09. /研究生类01. public class Postgraduate extends Student02. public Postgraduate(String name,int scores)03. super(name);04. this.setType("研究生");05. this.setScores(scores);06. this.setCriterion(new PostGradeCalculate();07. this.setGrade(this.getCriterion().getGrade(scores);08. 09. /测试类01. public class StudentTest 02. public static void main(String args)03. Student s=new Student10;04. int scores=new int10Student.COURSE_COUNT;05. for(int i=0;i<5;i+)06. for(int j=0;j<Student.COURSE_COUNT;j+)07. scoresij=(int)(Math.random()*61+40);08. 09. si=new Undergraduate("本科生"+(i+1),scoresi);10. 11. for(int i=5;i<10;i+)12. for(int j=0;j<Student.COURSE_COUNT;j+)13. scoresij=(int)(Math.random()*61+40);14. 15. si=new Postgraduate("研究生"+(i-4),scoresi);16. 17. int c;18. for(int i=0;i<10;i+)19. System.out.print(si.getName()+"t");20. System.out.print(si.getType()+"t");21. c=si.getScores();22. for(int j=0;j<Student.COURSE_COUNT;j+)23. System.out.print(cj+"t");24. 25. System.out.println(si.getGrade();26. 27. 28. 专心-专注-专业

    注意事项

    本文(java程序设计——基于JDK6和NetBeans实现第4章课后作业答案(共12页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开