Java面向对象程序设计 实验报告
Java面向对象程序设计实验

(4)编写图形界面的Java Applet,接收用户输入的一个整数型和一个浮点型数,单击按钮求两数之和。
(5)编程实现如下的功能,接收用户输入的一个0~8000之间的年份,输出这一年是否为闰年。
3.实验步骤
(1)键入,运行如下的Java Application程序并回答问题
{
Label prompt;
TextField input;
Label output;
ApplctFrame ()
{
super("Application Graphics Frame");
setLayout(new FlowLayout());
prompt=new Label("Enter a character please:");
4. ; expected表示本行缺少分号
5.} expected表示缺少} interface expected表示}多余
二、运行时错误
1.Can’t find class HelloWorldApp
系统找不到名为HelloWorldApp的类文件,一般地,该错误意味着类名拼写和原文件名不一样,系统创建filename.java文件时使用的是类名,并且区分大小写
2.实验任务
从网络下载或从CD-ROM直接安装Java开发工具J2SE,编写简单的Java Application和Java Applet程序,编译并运行这两个程序。
3.实验步骤
参见并自学:MyEclipse中新建和打开项目的操作S1 java:/v_show/id_XMjAyNTM0MzI0.html
面向对象编程 JAVA编程综合实验报告

成绩:JA V A编程B综合实验报告实验名称:面向对象编程实验时间:2012年5月31日星期四JAVA编程B综合实验报告一、实验名称面向对象编程二、实验目的1、理解Java语言是如何体现面向对象编程基本思想,2、了解类的封装方法,以及如何创建类和对象,3、了解成员变量和成员方法的特性。
4、掌握OOP方式进行程序设计的方法,5、了解类的继承性和多态性的作用。
三、实验环境配置Windows XP、JDK 1.6与Eclipse 3.5四、实验记录1)创建Applet 应用小程序2)创建对象并使用对象3)使用修饰符五、代码分析一、创建Applet 应用小程序1、创建一个Applet应用程序文件。
(1)程序功能:建立一个Applet小程序,使其可以进行简单的加法运算。
该程序要包含类、接口、属性、方法、事件等面向对象的基本元素。
(2)程序源代码如下。
import java.awt.*;import java.awt.event.*;import java.applet.Applet;public class Applet1 extends Applet implements ActionListener {Label label1 = new Label("+");Label label2 = new Label("=");TextField field1 = new TextField(6);TextField field2 = new TextField(6);TextField field3 = new TextField(6);Button button1 = new Button("相加");public void init() { // 初始化add(field1);add(label1);add(field2);add(label2);add(field3);add(button1);button1.addActionListener(this);}public void actionPerformed(ActionEvent e) { // 处理按钮事件int x = Integer.parseInt(field1.getText())+ Integer.parseInt(field2.getText());field3.setText(Integer.toString(x)); // 数值转换为字符串}}2、编写一个浏览Applet应用程序的页面文件Applet1.HTML,源代码如。
面向对象设计原则实验报告实验02

设计模式(2)实验报告一、实验目的1.结合实例,熟练绘制设计模式结构图。
2.结合实例,熟练使用 Java 语言实现设计模式。
3.通过本实验,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些设计模式。
二、实验要求1.结合实例,绘制设计模式的结构图。
2.使用 Java 语言实现设计模式实例,代码运行正确。
三、实验内容1.迭代器模式设计一个逐页迭代器,每次可返回指定个数(一页)元素,并将该迭代器用于对数据进行分页处理。
绘制对应的类图并编程模拟实现。
2.适配器模式某 OA 系统需要提供一个加密模块,将用户机密信息(例如口令、邮箱等)加密之后再存储在数据库中,系统已经定义好了数据库操作类。
为了提高开发效率,现需要重用已有的加密算法,这些算法封装在一些由第三方提供的类中,有些甚至没有源代码。
试使用适配器模式设计该加密模块,实现在不修改现有类的基础上重用第三方加密方法。
要求绘制相应的类图并编程模拟实现,需要提供对象适配器和类适配器两套实现方案。
3.模板方式模式和适配器模式在某数据挖掘工具的数据分类模块中,数据处理流程包括 4 个步骤,分别是:①读取数据;②转换数据格式;③调用数据分类算法;④显示数据分类结果。
对于不同的分类算法而言,第①步、第②步和第④步是相同的,主要区别在于第③ 步。
第③步将调用算法库中已有的分类算法实现,例如朴素贝叶斯分类(Naive Bayes)算法、决策树(DecisionTree)算法、K 最近邻(K-NearestNeighbor , KNN)算法等。
现采用模板方法模式和适配器模式设计该数据分类模块,绘制对应的类图并编程模拟实现。
4.工厂方法模式在某网络管理软件中,需要为不同的网络协议提供不同的连接类,例如针对 POP3 协议的连接类 POP3Connection、针对 IMAP 协议的连接类 IMAPConnection 、针对 HTTP 协议的连接类 HTTPConnection 等。
面向对象与java程序设计实验内容

实验一1、JDK 的下载、安装和配置2、编写一个打印出“The Java World〞的Java Application 程序,并编辑运行3、编写一个打印出“The First Applet〞的Java Applet程序,并编译,然后编写调用此Applet类的HTML 文件,并用appletviewer.exe 和Internet Explorer翻开。
实验二1、编写程序输出乘法口诀表public class Eg21{public static void main (String []args){int i,j,k;for (i=1;i<=9;i++){j=1;for (k=i;k<=9;k++,j++){System.out.printf ("%d*%d=%2d ",j,k,j*k);}System.out.println();}}}2、分别用do-while 和for 循环计算1+1/2!+1/3!+….的前20项的和public class Eg22{public static void main (String []args){int i,j;double[] arr=new double[21];double sum=0.0;arr[0]=1.0;// 这是以for循环处理的for (i=1;i<=20;i++){arr[i]=arr[i-1]*i;}for (i=1;i<=20;i++){sum=sum+1.0/(arr[i]);}//这是以DO WHILE循环处理的/*i=1;do{arr[i]=arr[i-1]*i;i++;}while (i<=20);i=1;do{sum=sum+1.0/arr[i];i++;}while (i<=20);*/System.out.println (""+sum);}}3、一个数如果恰好等于除它本身外的因子之和,这个数就称为“完数〞。
java面向对象实验报告

java面向对象实验报告《Java面向对象实验报告》摘要:本实验报告旨在探讨Java面向对象编程的基本概念和实践方法。
通过实验,我们将学习如何创建类、对象、封装、继承和多态等面向对象的特性,并通过实际代码演示这些概念的应用。
本报告将详细介绍实验过程和结果,并总结所得到的经验和教训。
一、实验目的1. 了解面向对象编程的基本概念和原则2. 掌握Java语言中类、对象、封装、继承和多态的使用方法3. 通过实验加深对面向对象编程的理解和掌握二、实验环境1. Java开发环境:Eclipse/IntelliJ IDEA等2. Java SDK版本:1.8及以上三、实验内容1. 创建一个简单的Java类2. 创建对象并调用对象方法3. 实现类的封装和访问控制4. 实现类的继承和方法重写5. 实现类的多态四、实验步骤1. 创建一个名为Person的Java类,包含姓名和年龄两个私有属性,并提供公有的get和set方法进行访问和修改。
2. 创建一个名为Student的子类,继承Person类,并重写父类的get方法。
3. 创建一个名为Teacher的子类,继承Person类,并重写父类的get方法。
4. 创建一个名为Main的主类,实例化Person、Student和Teacher对象,并调用其方法进行测试。
五、实验结果1. 成功创建了Person、Student和Teacher三个类,并实现了类的封装、继承和多态。
2. 通过测试,验证了类的封装和访问控制的有效性。
3. 通过测试,验证了类的继承和方法重写的有效性。
4. 通过测试,验证了类的多态的有效性。
六、实验总结通过本次实验,我深刻理解了面向对象编程的重要性和优势,掌握了Java语言中面向对象编程的基本概念和实践方法。
在今后的学习和工作中,我将继续加强对面向对象编程的理解和应用,不断提高自己的编程水平。
七、实验感想通过本次实验,我对Java面向对象编程有了更深入的了解,也更加熟练地掌握了面向对象编程的基本概念和实践方法。
《面向对象程序设计(Java)》专科课程实验报告

实
验
目
的
或
要
求
1.熟悉安装和配置JDK开发环境
2.熟悉安装和配置IDE开发工具
3.掌握Java程序编辑、编译和运行的过程
实
验
步
骤
、
心
得
体
会
1.写出Java程序开发环境的安装配置一般步骤
当前计算机系统安装路径:__
当前计算机系统设置的环境变量:PATH _____________________________
}}
【代码1】:
【代码2】:
【代码3】:
3.程序为数组及其排序
import java.util.*;
public classArrayAndSort{
public static void main(String args[]) {
int [] a={12,34,9,23,45,6,45,90,123,19,34};
___________________
CLASSPATH_____________________________________________________
___________
2.用记事本输入如下程序并通过配置好的JDK环境,利用相关命令获取结果
public class HelloJava{
}
}
public class Example{
public static void main(String args[]){
【代码5】//通过类名操作类变量b,并赋值100
【代码6】//通过类名调用方法inputB()
A cat=new A();
A dog=new A();
【报告】java实训报告总结(三篇)

java实训报告总结(三篇)篇一:java实验实训内蒙古商贸职业学院计算机系学生校内实验实训报告20--20学年第学期系部:计算机系课程名称:Java程序设计教程专业班级:内蒙古商贸职业学院计算机系制填写说明1、实验项目名称:要用最简练的语言反映实验的内容,要与实验指导书或课程标准中相一致。
2、实验类型:一般需要说明是验证型实验、设计型实验、创新型实验、综合型实验。
3、实验室:实验实训场所的名称;组别:实验分组参加人员所在的组号。
4、实验方案设计(步骤):实验项目的设计思路、步骤和方法等,这是实验报告极其重要的内容,概括整个实验过程。
对于操作型实验(验证型),要写明需要经过哪几个步骤来实现其操作。
对于设计型和综合型实验,在上述内容基础上还应该画出流程图和设计方法,再配以相应的文字说明。
对于创新型实验,还应注明其创新点、特色。
5、实验小结:对本次实验实训的心得体会、思考和建议等。
6、备注:分组实验中组内成员分工、任务以及其他说明事项。
注意:①实验实训分组完成的,每组提交一份报告即可,但必须说明人员分工及职责。
不分组要求全体成员独立完成的实验实训项目可由指导老师根据个人完成情况分组填写。
②实验成绩按照百分制记,根据教学大纲及课程考核要求具体区分独立计算、折算记入两种情况。
③本实验实训报告是根据计算机系实验的具体情况在学院教务处制的实验实训报告的基础上进行改制的。
特此说明。
成绩单组别:小组成员:篇二:实训实训收获总结报告学部:计算机信息学院学科门类:计算机信息类专业:计算机应用技术姓名:朱恩林学号:____020实习单位:北京盛威南凌信息科技有限公司指导教师:王洪钊实习时间:____年5月15号―9月23号一、实训目的计算机信息管理专业的java实训在教学计划中是实训、实习课程。
它涵盖了java开发和工程组织、数据结构等多项相关知识。
通过对java语言、JavaWeb、数据库、jsp、html+css、ssh框架应用设计及SQL 语言的复习和锻炼,并且通过使用elipse开发平台设计库存管理系统项目,以达到充分熟悉开发平台及其应用设计。
Java程序设计-试验2(学生版)

Java程序设计-试验2(学生版)
华北电力大学
实验报告
实验名称Java程序面向对象设计(一)课程名称Java程序设计
专业班级:学生姓名:
学号:成绩:指导教师:张学斌实验日期:
自己的speed的值增加80
【代码10】//car2调用speedUp方法将自己的speed的值增加80
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
car1.speedDown(10);
car2.speedDown(20);
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
}
}
1.3 实验指导
●创建一个对象时,成员变量被分配空间,这些内
存空间称作该对象的实体或变量,而对象中存放着引用,以确保这些变量被该对象操作使用。
●空对象不能使用,即不能让一个空对象去调用方
法产生行为。
假如程序中使用了空对象,在运行时会产生异常:NullPointerException,对象时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、实验目的及内容
目的:掌握和巩固Java面向对象程序设计的概念、方法。
内容:
1.设计一个Java程序,该程序运行后,说明:一个类的所有对象共享同一个类成员变量;一个类
的多个对象拥有各自的实例成员变量。
2.编写一个表示人的类Person,该类满足以下要求:
●有两个private成员变量:name(名字)、age(年龄);在Person类外访问这两个成员变量均通
过接口器函数(getXXX,setXXX)。
●该类具有一个有两个参数的构造函数,这两个参数分别用来初始化name和age成员变量。
●该类包含一个方法public boolean older(Person r),用于比较当前对象年纪是否比参数r的年纪大,
若是,则返回true,否则,返回false。
编写另外一个类:TestPerson,该类包含下面函数:
public static void sortPerson(Person[] personList),在该函数中利用Person类的older方法实现对数组personList按年龄从小到大排序。
main函数位于该类中。
在main函数中
(1)创建Person类的10个对象,并保存到一个数组中,创建10个对象时,每个对象的年龄为0~100的一个随机数(用Math.random()函数得到)。
(2)输出这个数组中每个对象的名字、年龄。
(3)调用sortPerson方法,对这个数组中的10个Person对象按年龄排序。
(4)输出排序后数组中每个对象的名字、年龄。
二、要求
1.给出上述程序的中涉及到的类的类图(可用visio画)、解决上述问题的思路、代码
和测试结果。
1.设计一个Java程序,该程序运行后,说明:一个类的所有对象共享同一个类成员变量;一个类的多个对象拥有各自的实例成员变量。
设计思路:要实现一个类的所有对象共享同一个类成员变量;一个类的多个对象拥有各自的实例成员变量。
我创建了一个Number类,并创建了两个对象number1和number2,该类有一个类成员函数static int numberofsum(int a, int b)来求和,一个类成员变量countnumber来统计对象的个数,还有实例成员变量num,通过两个对象求和以及统计对象个数,说明了一个类的所有对象共享同一个类成员变量,两个对象都有自己的num值说明了一个类的多个对象拥有各自的实例成员变量。
类图:
程序代码:
//package number;
public class Number {
public static void main(String[] args) {
System.out.println("Create two numbers!");
Number number1 = new Number(5);
System.out.println("After create the first number,countnumber is "
+ number1.countnumbers);
Number number2 = new Number(10);
System.out.println("After create the second number,countnumber is "
+ number2.countnumbers);
System.out.println("The two numbers is "
+ number1.num + " and " + number2.num);
System.out.println("The sum of two numbers is "
+ numberofsum(number1.num, number2.num));
}
static int countnumbers = 0;
int num;
Number(int a) {
num = a;
countnumbers++;
}
static int numberofsum(int a, int b) {
int sum = a + b;
return sum;
}
}
测试结果:
2.编写一个表示人的类Person,以及另外一个类:TestPerson。
具体要求见
实验内容。
设计思路:定义两个类Person和TestPerson,TestPerson类中有public static void sortPerson(Person[] personList)来对创建的十个对象进行年龄大小排序。
类图:
程序代码:
//package testperson;
import java.util.Scanner;
public class TestPerson {
public static void main(String[] args) {
final int number = 10;
Scanner input = new Scanner(System.in);
Person[] personArray = new Person[number];
for (int i = 0; i < personArray.length; i++) {
System.out.print("Please enter the name of person " + (i + 1) + ":");
String personName = input.next();
int personAge = (int) (Math.random() * 100);
personArray[i] = new Person(personAge, personName);
System.out.println("The " + (i + 1) + " person's name is "
+ personArray[i].getName()
+ " and the age is " + personArray[i].getAge());
}
sortPerson(personArray);
}
public static void sortPerson(Person[] personList) {
Person t;
for (int i = 0; i < personList.length - 1; i++) {
for (int j = i + 1; j < personList.length; j++) {
if (personList[i].older(personList[j])) {
t = personList[i];
personList[i] = personList[j];
personList[j] = t;
}
}
}
System.out.println("The age from young to old order is:");
for (int k = 0; k < personList.length; k++) {
System.out.println((k + 1) + ", name: " + personList[k].getName() + ", age: " + personList[k].getAge());
}
}
}
class Person {
private int age;
private String name;
Person(int getAge, String getName) {
age = getAge;
name = getName;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
public void setAge(int setage) {
age = setage;
}
public void setName(String setname) { name = setname;
}
public boolean older(Person r) {
if (this.age > r.age) {
return true;
} else {
return false;
}
}
}
测试结果:。