当前位置:学者斋 >

计算机 >java语言 >

java语言程序设计实验报告

java语言程序设计实验报告

篇一:Java实验八报告

java语言程序设计实验报告

《Java语言程序设计》实验报告

学生姓名: 郭倩

班级:信息112

学号:201152275208

实验地点: 经管实验中心证券实验室

指导教师:赵利平

实验日期:

实验环境:Windows 2000+JDK1.6

1. 实验目的

(1) 理解子类派生的概念

(2) 学习创建子类对象

(3) 掌握方法覆盖的'使用

2.实验内容

(1) 设计三个类:完成实验教材P52页程序清单4-2;

(2)通过编制一个程序来加深对嵌套类、内部类和局部类的理解:完成实验教材P56页程序清单4-3;

2. 实验过程

报告撰写具体要求:上述实验内容要求写出源代码及运行结果。

实验内容(1):

//

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){

=type;

}

public void setCourseScore(int courseNumber,int courseScore){ses[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]ourseScore(0,87);

students[i]ourseScore(1,90);

students[i]ourseScore(2,78);

}

for(int i=0;i<5;i++){

students[i]ulateGrade();

}

tln("姓名"+" 类型"+" 成绩");

}}

tln("-------------------------"); for(int i=0;i<5;i++){ tln(students[i]ame()+" "+students[i]ype()+" "+students[i]ourseGrade()); }

(1) 都有

(2) Student[] students=new Student[5];

(3) Student是抽象的,不能用new操作符创建抽象类的实例。

(4)

(5) //

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;

}

篇二:Java实验八集合

计算机工程学院实验报告

课程名称: Java

指导教师:

实验项目名称: 集合

实验项目编号: 实验八

一、目的(本次实验所涉及并要求掌握的知识点)

班级: 姓名: 学号: 组号: 实验成绩: 上机实践日期: 上机实践时间: ?

?

?

?

List与Iterarot接口 Map与HashMap Set、HashSet与TreeSet 集合框架与Collections

二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、主要代码段分析、电路图)

题目1:List与Iterarot接口

package NameDao;

import ;

public interface NameDao {

public ListgetNameFromArray(String[] names);

public int searchName(ListnameList, String name);

public boolean removeFromList(ListnameList, int id);

}

package NameDao;

import yList;

import ections;

import ;

public class NameDaoImpl implements NameDao{

@Override

//将数组中的字符串放入列表

public ListgetNameFromArray(String[] names) {

Listlist = new ArrayList();

for (String string : names) {

(string);

}

return list;

}

@Override

//在列表中搜索到与name相同的项目,就返回该name所在的序号,找不到返回-1。 public int searchName(ListnameList, String name) {

return rySearch(nameList, name);

}

@Override

//根据指定id,从列表中移除指定的项目,如果id指定错误(负数或者超出列表最大值)抛出IllegaArgumentException异常,移除成功返回true

public boolean removeFromList(ListnameList, int id) {

if(id<0 id="">=()) {

throw new IllegalArgumentException("参数出错id="+id);

}

ve(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 = ameFromArray(names);

tln(chName(list, "2"));

veFromList(list, 0);

for (String string : list) {

t(string+" ");

}

}

}

题目2:Map与HashMap

package Student;

import ;

import om;

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) { = age; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + age; result = prime * result + ((name == null) ? 0 : Code()); return result; } @Override public boolean equals(Object obj) { if (this == obj)return true; if (obj == null)return false; if (getClass() != lass())return false; Student other = (Student) obj; if (age != )return false; if (name == null) {if ( != null) return false; } else if (!ls())return false; return true; } public Student(String name, int age) { = name; = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; }

}

package Student;

import yList;

import ections;

import Map;

import ;

import ;

import om;

public class Util {

/**

*

* @param

* @return 返回分布在[0,upLimit]的随机整数

*/

public static int getRandomNumber(int upLimit) {

return new Random()Int(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()Int(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) {

nd((char)getRandomNumber('a','z'));

n--;

}

return ring();

}

public static ListgetRandomStudents(int n){

Listlist = new ArrayList();

for(int i = 0; i<n;i++){

(new Student(getRandomName(3,5),getRandomNumber(18,22)));}

return list;

}

public static MapmakeStudentMap(ListstuList) {MapstuMap = new HashMap();

for (Student student : stuList) {

(ame(), student);

}

return stuMap;

}

public static Student searchStudent(MapstuMap, String name) {return (name);

}

public static int searchName(ListstuList, String name) {

return rySearch(stuList, name);

}

public static ListgenerateNameList(int n) {

Listlist = new ArrayList();

for(int i = 0; i < n;i++){

(getRandomName(3,5));

}

return list;

}

public static MapgenerateStudentMap(int n){

MapstuMap = new HashMap();

Liststudents = getRandomStudents(n);

return makeStudentMap(students);

}

}

package Student;

  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/java/0l065z.html