java语言程序设计实验报告篇一:Java实验八报告《Java语言程序设计》实验报告学生姓名:郭倩班级:信息112学号:201152275208实验地点:经管实验中心证券实验室指导教师:赵利平实验日期:实验环境:Windows 2000+JDK1.61. 实验目的(1)理解子类派生的概念(2)学习创建子类对象(3)掌握方法覆盖的使用2.实验内容(1)设计三个类:完成实验教材P52页程序清单4-2;(2)通过编制一个程序来加深对嵌套类、内部类和局部类的理解:完成实验教材P56页程序清单4-3;2. 实验过程报告撰写具体要求:上述实验内容要求写出源代码及运行结果。
实验内容(1)://Polymorphism.abstract class Student{final static int CourseNo=3;String name;String type;int[] courses;String courseGrade;public Student(String name){=name;courses=new int[CourseNo];courseGrade=null;}public abstract void calculateGrade();public String getName(){return name;}public String getType(){return type;}public String getCourseGrade(){return courseGrade;}public int getCourseScore(int courseNumber){return courses[courseNumber];}public void setName(String name){=name;}public void setType(String type){this.type=type;}public void setCourseScore(int courseNumber,int courseScore){this.courses[courseNumber]=courseScore;}}class Undergraduate extends Student{public Undergraduate(String name){super(name);type="本科生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=80&&average<100) coursegrade="优秀" else="" average="">=70&&average<80) coursegrade="良好" else="" average="">=60&&average<70) coursegrade="一般" else="" average="">=50&&average<60) courseGrade="及格";else courseGrade="不及格";}}class Postgraduate extends Student{public Postgraduate(String name){super(name);type="研究生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=90&&average<100) coursegrade="优秀" else="" average="">=80&&average<90) coursegrade="良好"else="" average="">=70&&average<80) coursegrade="一般" else="" average="">=60&&average<70) courseGrade="及格";else courseGrade="不及格";}}public class Polymorphism{public static void main(String[] args){Student[] students=new Student[5];students[0]=new Undergraduate("陈建平");students[1]=new Undergraduate("鲁向东");students[2]=new Postgraduate("匡晓华");students[3]=new Undergraduate("周丽娜");students[4]=new Postgraduate("梁欣欣");for(int i=0;i<5;i++){students[i].setCourseScore(0,87);students[i].setCourseScore(1,90);students[i].setCourseScore(2,78);}for(int i=0;i<5;i++){students[i].calculateGrade();}System.out.println("姓名"+" 类型"+" 成绩");}}System.out.println("-------------------------"); for(int i=0;i<5;i++){ System.out.println(students[i].getName()+" "+students[i].getType()+" "+students[i].getCourseGrade()); }(1) 都有(2) Student[] students=new Student[5];(3) Student是抽象的,不能用new操作符创建抽象类的实例。
(4)(5) //Polymorphism.javaabstract class Student{final static int CourseNo=3; String name;String type;int[] courses;String courseGrade;public Student(String name){=name;courses=new int[CourseNo];courseGrade=null;}public abstract void calculateGrade();public String getName(){return name;}public String getType(){return type;}public String getCourseGrade(){return courseGrade;}篇二:Java实验八集合计算机工程学院实验报告课程名称: Java指导教师:实验项目名称:集合实验项目编号:实验八一、目的(本次实验所涉及并要求掌握的知识点)班级:姓名:学号:组号:实验成绩:上机实践日期:上机实践时间: ?List与Iterarot接口 Map与HashMap Set、HashSet与TreeSet集合框架与Collections二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、主要代码段分析、电路图)题目1:List与Iterarot接口package NameDao;import java.util.List;public interface NameDao {public ListgetNameFromArray(String[] names);public int searchName(ListnameList, String name);public boolean removeFromList(ListnameList, int id);}package NameDao;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class NameDaoImpl implements NameDao{@Override//将数组中的字符串放入列表public ListgetNameFromArray(String[] names) {Listlist = new ArrayList();for (String string : names) {list.add(string);}return list;}@Override//在列表中搜索到与name相同的项目,就返回该name所在的序号,找不到返回-1。
public int searchName(ListnameList, String name) {return Collections.binarySearch(nameList, name);}@Override//根据指定id,从列表中移除指定的项目,如果id指定错误(负数或者超出列表最大值)抛出IllegaArgumentException异常,移除成功返回truepublic boolean removeFromList(ListnameList, int id) {if(id<0 id="">=nameList.size()) {throw new IllegalArgumentException("参数出错id="+id);}nameList.remove(id);return true;}public static void main(String[] args) {NameDaoImpl ndi = new NameDaoImpl();String names[] = new String[3];names[0] = "1";names[1] = "2";names[2] = "3";Listlist = new ArrayList();list = ndi.getNameFromArray(names);System.out.println(ndi.searchName(list, "2"));ndi.removeFromList(list, 0);for (String string : list) {System.out.print(string+" ");}}}题目2:Map与HashMappackage Student;import java.util.List;import java.util.Random;public class Student {String name;int age;public String getName() {return name;} public void setName(String name) { = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + age; result = prime * result + ((name == null) ? 0 : name.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj)return true; if (obj == null)return false; if (getClass() != obj.getClass())return false; Student other = (Student) obj; if (age != other.age)return false; if (name == null) {if ( != null) return false; } else if (!name.equals())return false; return true; } public Student(String name, int age) { = name; this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; }}package Student;import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Random;public class Util {/**** @param* @return 返回分布在[0,upLimit]的随机整数*/public static int getRandomNumber(int upLimit) {return new Random().nextInt(upLimit+1);}/**** @param min* @param max* @return 返回分布在[min,max]的随机整数*/public static int getRandomNumber(int min,int max){if(min > max){throw new IllegalArgumentException("min ="+min+">"+ "max="+max);}return min + new Random().nextInt(max+1-min);}/**** @param min* @param max* @return 返回长度在min到max之间随机名字*/public static String getRandomName(int min, int max){StringBuilder sb = new StringBuilder();int n = getRandomNumber(min, max);while (n>0) {sb.append((char)getRandomNumber('a','z'));n--;}return sb.toString();}public static ListgetRandomStudents(int n){Listlist = new ArrayList();for(int i = 0; i<n;i++){list.add(newStudent(getRandomName(3,5),getRandomNumber(18,22)));} return list;}public static MapmakeStudentMap(ListstuList) {MapstuMap = new HashMap();for (Student student : stuList) {stuMap.put(student.getName(), student);}return stuMap;}public static Student searchStudent(MapstuMap, String name) {return stuMap.get(name);}public static int searchName(ListstuList, String name) {return Collections.binarySearch(stuList, name);}public static ListgenerateNameList(int n) {Listlist = new ArrayList();for(int i = 0; i < n;i++){list.add(getRandomName(3,5));}return list;}public static MapgenerateStudentMap(int n){ MapstuMap = new HashMap(); Liststudents = getRandomStudents(n); return makeStudentMap(students);}}package Student;。