目录

一、实验目的与任务

二、实验内容、要求及安排方式

1、实验内容与要求:

(1)

(2)

(3)

2、要求:

3、实验安排方式:

三、实验环境

四、核心代码及运行效果

(1)

(2)

(3)

五、实验小结


一、实验目的与任务

1、掌握常用类和集合的使用

2、掌握异常处理的机制

3、创建类并抛出异常,对异常进行捕获,自定义异常

二、实验内容、要求及安排方式

1、实验内容与要求:

(1)

设计一个Student类,该类中包括学生的姓名和成绩。创建Student类的5个对象,如下所示:

姓名

成绩

刘德华

90

张学友

80

刘杰

65

章子怡

100

周迅

60

将以上5个对象放入LinkedList中,完成如下操作和统计:

  1. 输出LinkedList中的对象个数。
  2. 删除姓名为“刘杰”的学生信息,并输出LinkedList中现有学生信息。
  3. 将姓名为“刘德华”的学生成绩改为95。
  4. 输出成绩不及格的学生姓名。

(2)

编写一个异常类MyException,再编写一个类Student,该类有一个产生异常的方法speak(int m)。要求参数m的值大于1000时,方法抛出一个MyException对象。最后编写主类,在主方法中创建Student对象,让该对象调用speak()方法。

(3)

创建类Computer,该类中有一个计算两个数最大公约数的方法,如果向该方法传递负整数,该方法抛出自定义异常。

2、要求:

能够上机编辑、调试java程序;

3、实验安排方式:

每组1人,独立完成上机实验;

三、实验环境

硬件环境:微型计算机一台。

软件环境:Window XP/7/8/10操作系统、Eclipse、JDK。

四、核心代码及运行效果

无注释版

(1)

Student类:

public class Student {private String name;private int scores;public Student() {}public Student(String name, int scores) {this.name = name;this.scores = scores;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getScores() {return scores;}public void setScores(int scores) {this.scores = scores;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", scores=" + scores +'}';}
}

StudentTest类: 

import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.function.Consumer;public class StudentTest {public static void main(String[] args) {LinkedList<Student> list = new LinkedList<>();LinkedList<Student> list2 = new LinkedList<>();Student s1 = new Student("刘德华", 90);Student s2 = new Student("张学友", 80);Student s3 = new Student("刘杰", 65);Student s4 = new Student("章子怡", 100);Student s5 = new Student("周迅", 60);Collections.addAll(list, s1, s2, s3, s4, s5);System.out.println("==================需求一============");int size = list.size();System.out.print("LinkedList中的对象个数为:");System.out.println(size);System.out.println("==================需求二============");Iterator<Student> iterator = list.iterator();while (iterator.hasNext()) {if (iterator.next().getName().equals("刘杰")) {iterator.remove();}}for (Student student : list) {System.out.println(student);}System.out.println("==================需求三============");for (Student student : list) {if (student.getName().equals("刘德华")) {student.setScores(95);}}list.forEach(student -> {if (student.getName().equals("刘德华")) System.out.println(student);});System.out.println("==================需求四============");for (Student student : list) {if (student.getScores() <= 60)System.out.println(student.getName());}}
}

(2)

Myexception: 

public class MyException extends RuntimeException{public MyException() {}public MyException(String message) {super(message);}
}

Student类:

public class Student {public void speak(int m) {if(m > 1000){throw new MyException("输入的数据"+m +"大于1000");}}
}

StudentTest类:

import java.util.Scanner;public class StudentTest {public static void main(String[] args) {Student s = new Student();Scanner sc = new Scanner(System.in);int i = sc.nextInt();try {s.speak(i);}catch (MyException e ){e.printStackTrace();}}
}

(3)

Myexception: 

public class MyException extends RuntimeException{public MyException() {}public MyException(String message) {super(message);}
}

computer类:

public class Computer {public int num(int a , int b){if(a <= 0 || b <= 0){throw new MyException("输入的参数中存在负数或零,请重新输入");}if(a<b){int tmp=0;tmp = a;a=b;b=tmp;}int r=a % b;while (r !=0){a=b;b=r;r=a % b;}return b;}
}

computerTest类:

import java.util.Scanner;public class ComputerTest {public static void main(String[] args) {Computer c = new Computer();Scanner sc = new Scanner(System.in);int i = sc.nextInt();int j = sc.nextInt();try {System.out.println(c.num(i, j));}catch (MyException e){e.printStackTrace();}}
}

五、实验小结

Java实验报告(四)相关推荐

  1. 第六周java实验报告四

    实验报告: 一.实验目的 (1)掌握类的继承 (2)变量的继承和覆盖,方法的继承,重载和覆盖的实现: 二.实验的内容 (1)根据下面的要求实现圆类Circle. 1.圆类Circle的成员变量:rad ...

  2. java实验报告实验六,第六周java实验报告四

    实验四 实验目的 (1)掌握类的继承 (2)变量的继承和覆盖,方法的继承,重载和覆盖的实现: 1)根据下面的要求实现圆类Circle. 1.圆类Circle的成员变量:radius表示圆的半径. 2. ...

  3. java校内报纸实验报告_第六周Java实验报告四

    ---恢复内容开始--- 一.实验目的 (1)掌握类的继承 (2)变量的继承和覆盖,方法的继承,重载和覆盖的实现: 二.实验的内容 (1)根据下面的要求实现圆类Circle. 1.圆类Circle的成 ...

  4. Java实验报告四,研究生薪资管理,创建一个抽象交通工具Vehicle类,经理与员工工资等实验

  5. Java实验实现一个circle类_Java实验报告四

    Java实验报告四 一.题目 1.根据下面的要求实现圆类Circle. 1).圆类Circle的成员变量:radius表示圆的半径. 2).圆类Circle的方法成员: Circle():构造方法,将 ...

  6. java实验报告 05 类与_java程序设计类与方法-java实验报告

    java程序设计类与方法-java实验报告 java程序设计类与方法-java实验报告 1. 实验内容或题目 (1) 编写Java应用程序,实现以下功能:当应用程序运行后,根据屏幕提示进行交互式输入并 ...

  7. Java实验实现一个circle类,java实验报告-类的定义.doc

    java实验报告-类的定义 南京理工大学泰州科技学院 实验报告书 课程名称: <JAVA面向对象程序设计> 实验题目: 实验三 类的定义 班 级: 09计算机(2) 学 号: 090903 ...

  8. java实验册_Java实验报告册Java实验报告册.doc

    Java实验报告册Java实验报告册 <面向对象程序设计> 实验报告与习题册2013 / 2014 学年 第1学期系 别 计算机科学与技术系专 业 班 级 姓 名 指导教师 目 录 项 目 ...

  9. java人学生大学生类的继承,java实验报告7.doc

    java实验报告7.doc 实 验 报 告( 2014 / 2015学年 第2学期)课程名称JAVA程序设计实验名称 类的继承实验时间2015年4月30日指导单位计算机学院/软件学院软件工程系指导教师 ...

  10. java实验报告可下载_JAVA实验报告.doc

    JAVA实验报告.doc 学 生 实 验 报 告 册(理工类)课程名称面向对象程序设计 专业班级16计算机科学与技术(专转本) 学生学号 1613203022 学生姓名 张义丹 所属院部 计算机工程 ...

最新文章

  1. 为什么做好数据安全这么难?黑客太牛?
  2. LaTeX实战经验:数学公式环境注意事项
  3. SVM针对中文文本分类
  4. 今年的假期挺长的~~~
  5. cin、cin.get()、cin.getline()、getline()、gets()等函数的用法(转)
  6. 当前主要使用的python版本_动力火车当歌词
  7. 英文操作系统下WebBrowser控件无法显示本地页面的解决方法
  8. 初次远程做Linux Iptables规则注意事项
  9. shell sort 最后一列排序_算法实现系列(1)—— 排序算法
  10. IS-IS报文格式分析
  11. 2015-数学(3)
  12. python 基于模板生成ppt_【Python3】通过模板实现PPT的自动生成
  13. 玩转算法与数据结构 C++描述 选择排序
  14. 腾讯秀丽江山之长歌行服务器维护,37长歌行5月15日合服维护公告
  15. ip-guard文档加密后无小锁标志
  16. java dispose事件_求助!!为什么我的dispose()不起作用
  17. Linux (CentOS) 系统下载地址
  18. mysql之MyISAM和InnoDB
  19. 错过两个时代的IBM,能否用区块链抢占下个时代
  20. JavaScript 教程「3」:数据类型

热门文章

  1. 计算机组成原理--计算机的运算方法
  2. c语言逐行扫描打印图案,用逐行扫描法读取4X4键盘矩阵,不能扫描出第一列按键?...
  3. rx6700xt相当于什么n卡
  4. 低代码!数字时代新的 Excel / PPT ?
  5. 转杨毅:火箭输得有谱了!
  6. selenium报错:find_element() argument after * must be an iterable, not bool
  7. Windows非法文件和目录的创建及删除方式
  8. 用C++11的多线程读文件
  9. 阿里云服务器ECS Ubuntu16.04-64-bit学习之一:配置桌面(进阶-脚本一键执行)
  10. Shutdown自定义自动关机软件