当前位置:文档之家› Java实验报告4-接口和多态

Java实验报告4-接口和多态

Java实验报告4-接口和多态
Java实验报告4-接口和多态

实验报告

【实验名称】第四章接口和多态

【实验目的】

1.学习Java中抽象类的概念

2.学习接口的概念

3.学习面向抽象的编程以及面向接口的编程

【实验原理】

1.Java程序设计基本原理

2.面向对象程序设计基本原理

【实验内容】

一、结合本次课程,简答:

1、什么是上转型对象?调用子类方法原则?

将子类赋给父类时,称父类为子类的上转型对象。

方法原则:只能调用子类继承和重写的方法,不能调用子类中新的方法。

2、父类创建的对象和其子类的上转型对象异同?

相同点:都可以对父类里的方法进行调用。

不同点:上转型对象调用的父类方法只能是子类重写之后的,而父类创建的对象调用的是自身定义的。

3、为什么引入抽象类和抽象方法?

抽象类只关心操作,不关心操作具体实现细节,可以使程序员把精力集中在程序的设计上,而不必拘泥于细节的实现。也就是说设计者只需设计好方法,而具体方法实现由子类的设计者实现。减轻了程序员的负担。

4、接口和抽象类的异同?

相同点:二者都是需要背继承和实现后才有实际意义,并且二者都有抽象类型。

不同点:抽象类属于类,接口是一种新的数据类型;抽象类的属性可以是常量和变量,而接口中只能是常量;抽象类中可以有抽象方法和普通方法,而接口中只能是抽象方法;抽象类将其抽象方法的实现交给其子类,而接口将其抽象方法的实现交给实现该接口的类。

5、接口和类的异同?

相同点:接口和类都是数据类型;属性中都有常量,方法中都有抽象类方法。

不同点:类的属性是变量和常量,方法需要实现,而接口的属性只能是常量,方法只需声明;类中可以有抽象方法和普通方法,而接口中只能是抽象方法;

类的属性可以是常量和变量,而接口中只能是常量;类中可以有抽象方法和普通方法,而接口中只能是抽象方法。

二、程序设计

实验一:按要求完成程序

1. 设计一个抽象类People,具有抽象方法say();

2. 设计子类ChinaPeople,AmericaPeople,实现抽象方法say();

两个类的say()方法,分别输出语句:我是中国人;我是美国人

3. 设计一个Speak类,提供speaking(People p)方法,注意:其参数是抽

象的People类型,Speaking方法中,要求以上转型对象参数p,调用say 方法的内容;

4. 设计一个测试类Test,添加main函数,分别创建中国人和美国人,测试

speak类的使用;

5.再增加一个子类AfricaPeople,实现抽象方法say();添加到测试类中。代码:

abstract class People {

abstract void say();

}

class ChinaPeople extends People{

void say(){System.out.println("我是中国人");}

}

class AmericaPeople extends People{

void say(){System.out.println("我是美国人");}

}

class AfricaPeople extends People{

void say(){System.out.println("我是非洲人");}

}

class speak{

void speaking(People p){

p.say();

}

}

public class test{

public static void main(String args[]){

speak ss=new speak();

ChinaPeople wang=new ChinaPeople();

AmericaPeople scott=new AmericaPeople();

AfricaPeople nora=new AfricaPeople();

ss.speaking(wang);

ss.speaking(scott);

ss.speaking(nora);

}

}

实验二:

1.接口A有一个f(int a, int b)方法

2. B类实现接口A,重写f()方法,返回最大公约数;

3. C类实现接口A ,重写f()方法,返回最小公倍数;最小公倍数=(a*b)/最大公约数

4. D类提供show(A a)方法,以接口A的变量为参数,在方法内,打印出

a.f(4,6)方法的返回值;

5. 设计test类,包含main函数,用D类生成对象,对象调用show()方法分别以B类对象作为参数和以C类对象作为参数,求最大公约数和最小公倍数!

public int f(int a,int b) { //求最大公约数

int r =1 ;

int aa = a;

int bb = b;

while (r!=0){ r = aa % bb; aa = bb; bb = r; }

return aa;

}}

代码:

interface A{

int f(int a,int b);

}

class B implements A{

public int f(int a,int b){

int r =1 ;

int aa = a;

int bb = b;

while (r!=0){ r = aa % bb; aa = bb; bb = r; }

return aa;

}

}

class C implements A{

public int f(int a,int b){

int r =1 ;

int aa = a;

int bb = b;

while (r!=0){ r = aa % bb; aa = bb; bb = r; } return a*b/aa;

}

}

class D{

public void show(A a){System.out.println(a.f(4,6));}

}

public class test{

public static void main(String args[]){

D ss=new D();

B pp=new B();

C qq=new C();

ss.show(pp);

ss.show(qq);

}

}

实验三:设计一个给班级学生成绩排序的程序,具体要求如下:

(1)定义一个学生类student,包含姓名和分数两个属性:String name;

int score;

(2)在主类中,定义一个学生类数组stu[ ],包含至少5个学生,对每个学生的姓名和分数进行赋值;

(3)对所有学生按照分数进行排序,并放入stu数组中;注意:如何排序,方法不定,请同学们思考。

(4)把所有学生信息,按照分数从高到底打印出来。

代码:

class student {

String name;

int score;

student(String ss,int pp){

https://www.doczj.com/doc/bc8495125.html,=ss;

this.score=pp;

}

}

public class test{

public static void main(String args[]){

student[] stu=new student[5];

student s1=new student("wang",78);

student s2=new student("liu",68);

student s3=new student("zhang",71);

student s4=new student("li",83);

student s5=new student("wei",90);

stu[0]=s1;

stu[1]=s2;

stu[2]=s3;

stu[3]=s4;

stu[4]=s5;

for(int j=0;j<=4;j++)

for(int k=4;k>j;k--){

if(stu[k].score>stu[k-1].score){

int temp=stu[k].score;

stu[k].score=stu[k-1].score;

stu[k-1].score=temp;

String txt=stu[k].name;

stu[k].name=stu[k-1].name;

stu[k-1].name=txt;

}

}

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

System.out.println(stu[i].name+"--"+stu[i].score);

}

}

}

【小结或讨论】

这次的实验内容为接口与多态,首先回顾了上节课继承的使用方法,然后又继续上次抽象类的讲解,接着是接口的使用规则,对比了类和接口的区别以及抽象类和接口的区别,实验的最后又简单介绍了数组和枚举的应用,接着,通过一系列的题目进行了巩固。

.

第一次 Java 实验报告

Java实验报告 班号学号姓名 实验地点完成日期年月日 实验一Java编程环境使用 一、实验任务和要求 掌握Java运行环境的配置 掌握Java程序的编写、编译、运行等过程 熟悉Java语言的基本语法和运行原理 掌握Java的基本数据类型、表达式和程序控制结构 熟悉Eclipse开发环境的基本使用方法 二、原理分析和程序设计 实验内容: 1、在控制台下求两个实数的最大值(CompareTwoNumbers.java) 要求:从键盘输入任意两个实数,比较两个数字的大小,将较大的数输出。数据输入和输出用Java的标准输入流和输出流来实现。请按照代码提示编写完整程序,并查看结果。 代码提示: import java.util.Scanner; //导入Scanner对象; Scanner scanner = new Scanner(System.in);//实例化一个Scanner对象; number1 = scanner.nextDouble();//从键盘输入一个实数赋值给number1; 相应代码: import java.util.Scanner; //导入Scanner对象; public class CompareTwoNumbers { public static void main(String[] args){ Scanner scanner = new Scanner(System.in);//实例化一个Scanner对象; System.out.print("请输入第一个数:"); double number1 = scanner.nextDouble();//从键盘输入一个实数赋值给number1; System.out.print("请输入第二个数:"); double number2 = scanner.nextDouble(); double c=number1>number2?number1:number2; System.out.print("最大的数为:"+c); } } 猜数字游戏(GuessNumber.java)

JAVA实验报告一

Java语言程序设计实验报告一 班级:姓名:学号: 一、实验教学目的与基本要求 Java程序设计的实验是Java程序设计课程重要的实践教学环节。实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的动手能力,掌握常用Java开发环境的使用方法,培养学生分析问题、解决问题、应用知识的能力和创新精神。充分放手让学生自行设计、自主调试,真正培养学生的实践动手能力,全面提高学生的综合素质。 本课程是一门程序设计语言课程,通过本课程的学习,学生能够掌握Java 语言程序的基本特点、基本编程方法和基本开发技巧,培养学生阅读、分析、设计和调试Java语言的能力,并具备一定的面向对象程序设计思想。 本课程的主要任务是在已学习的编程语言基础上,讲述Java语言的数据结构和语法规则;基本控制结构和编程技巧;Java语言面向对象的特点、编程方法和程序设计思路;Java语言的GUI程序和文件及I/O流的编程方法;能够正确配置Java开发环境,并使用相关的编辑、编译、调试、运行命令。 (1)掌握Java语言的编程技巧,能够独立进行面向对象的开发能力。 (2)具有根据编程需求独立查询Java类库文档及相关资料,完成系统的能力。 (3)具有分析、寻找和排除程序中常见问题的能力。 二、实验内容与收获 (1)Java的安装与配置。熟悉语言环境及简单程序设计的使用练习,正确配置Java 开发环境(Eclipse 集成开发环境的安装、配置与使用) a)安装JDK Sun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。 可以通过IE或Netscape浏览器浏览网址:https://www.doczj.com/doc/bc8495125.html,/j2se,根据提示

JAVA实验报告四(实现String类)

JA V A实验报告实验四运用JavaFx实现时钟动画 班级:计算机科学与技术1306 学号: 00 姓名:王雨思 指导教师:鲁鸣鸣 2014 年 12 月 1 日

目录 一.概述 (6) 二.总体方案设计 (7) 三.详细设计 (8) 四.程序的调试与运行结果说明 (9) 五.课程设计总结 (10) 六.后记 (11) 七.附录 (12) 参考文献 (13)

一概述 1.课程设计的目的 了解和掌握String类的实现原理 2.课程设计的要求 基于ArrayList实现可以深度复制(Deep Copy)的栈结构。1.首先用ArrayList实现栈结构 2.接着将第1步实现的栈通过Clonable接口实现深度复制 3.课程设计的主要设计思想 基于ArrayList实现可以深度复制(Deep Copy)的栈结构。二总体方案设计 编写程序实现MyString类的下列操作: public MyString(char[] chars); public char charAt(int index); public int length(); public MyString substring(int begin, int end); public MyString toLowerCase(); public boolean equals(MyString s); public static MyString valueOf(int i); public int compare(String s); public MyString substring(int begin); public MyString toUpperCase(); public char[] toChars();

java第一次报告

学生实验报告 (2009—2010学年第一学期) 课程名称:基于Java的Web应用设计开课实验室:2301 2009年 10月 30 日

一、实验目的及内容 目的:掌握和巩固Java基础知识 内容: 1.Java语言开发流程 2.编写一个程序,该程序实现以下功能:把自己的学号看作是一个整数n,计算并在 屏幕上输出该整数各位相加的结果。例如:学号为12345的同学应计算并输出结果 15。 二、要求 1.描述Windows下JDK环境变量的设置。 2.描述上述程序的设计、实现和结果,并对结果进行分析;设计和实现时要求上述功 能放到main函数之外的其他函数中实现。 3.以上面程序为例完整叙述(1)在命令行方式下Java语言的开发流程;(2)在NetBeans 集成开发环境中的开发流程。 三、实验步骤 1、环境变量设置: 右键点击“我的电脑”,选择“属性”,在“高级”选项里进入“环境变量”的设置如下: 2、path变量的设置:path, 是告诉系统, 当要求系统运行一个程序而没有告诉它程序所在的完整路径时, 系统除了在当前目录下面寻找此程序外, 还应到哪些目录下去寻找。本次实验中设置为java安装时bin的绝对路径如下:

4、新建项目如下: 5、设置项目名称及运行路径如下

6、程序设计如下: /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package jing; import java.io.*; /** * * @author ycx */ public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here InputNum inp=new InputNum(); CountStuNum coun=new CountStuNum(); try{ long getNum=inp.InputNum(); coun.CountStuNum(getNum); }catch(IOException e){

java——实验报告

public class Hello { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("大家好!");//向控制台输出语句 System.out.println("Nice to meet you");//向控制台输出语句 Student stu = new Student();//类确定对象 stu.speak("We are students");//stu对象向控制台输出语句} } class Student { public void speak (String s){//创建新的类 System.out.println(s); } } class Student { public void speak (String s){//创建新的类 System.out.println(s); 例子2 public class People {//定义一个公共访问权限的类People /** * @param args

int height;//定义浮点型数据height String ear;//定义浮点型数据heightear void speak(String s){ //定义speak()方法,该方法的功能是输出参数的值 System.out.println(s); } } class A { public static void main(String[] args) { // TODO Auto-generated method stub People zhubajie;//声明一个People类的对象zhubajie zhubajie = new People(); //为对象zhubajie分配储存空间(通过关键字new和构造方法) zhubajie.height =170; //给对象zhubajie的height变量赋值1.7 zhubajie.ear = "两只大耳朵"; System.out.println("身高:"+zhubajie .height); System.out.println(zhubajie.ear); //调用对象zhubajie的speak()方法 zhubajie.speak("师傅,咱们别去西天了,改去月宫吧"); } }

java第二次实验报告

java实验报告 实验题目运用JavaFx实现时钟动画学生姓名 指导教师 学院 专业班级 完成时间2014年12

目录 一、实验目的 (3) 二、实验开发环境和工具 (3) 三、实验内容 (3) 四.实际简要描述: (3) 五.程序清单 (4) 六.结果分析 (10) 七.调试报告 (11) 八.实验心得 (11)

一、实验目的 1.了解和掌握JavaFx动画基本概念和相关用法 二、实验开发环境和工具 可以在Linux或者Windows操作系统上搭建开发环境,可使用集成开发环境Eclipse,使用Java语言,工具包使用JDK1.8。 三、实验内容 基于JavaFx画出如下所示可动态变化的时钟。要求按‘start’按钮可启动时钟,按‘stop’按钮可让时钟暂停。时钟初始时显示当前时间并开始动态变化。 四.实际简要描述: 1.新建一个动态时针 EventHandlereventHandler = e -> { clock.setCurrentTime(); // 设置时钟时间 }; 2.建立一个动画使时钟走起来 Timeline animation = new Timeline( newKeyFrame(https://www.doczj.com/doc/bc8495125.html,lis(1000), eventHandler)); animation.setCycleCount(Timeline.INDEFINITE); animation.play(); // 开始动画

3.建立按钮 HBoxhbox=new HBox();//新建HBOX布局 hbox.setSpacing(20); hbox.setLayoutX(310); hbox.setLayoutY(520); Start = new Button("Start");//建立start按钮 Start.setPrefSize(80, 40); Stop = new Button("Stop");//建立stop按钮 Stop.setPrefSize(80, 40); hbox.getChildren().addAll(Start,Stop);//将按钮加入HBOX getChildren().add(hbox); 五.程序清单 importjavafx.application.Application; importjava.util.Calendar; importjava.util.GregorianCalendar; https://www.doczj.com/doc/bc8495125.html,yout.Pane; importjavafx.scene.paint.Color; importjavafx.scene.shape.Circle; importjavafx.scene.shape.Line; importjavafx.scene.text.Text; importjavafx.application.Application; importjavafx.stage.Stage; importjavafx.animation.KeyFrame; importjavafx.animation.Timeline; importjavafx.event.ActionEvent;

java实验报告4

一.实验目的 (1)学习类的成员变量和成员方法的声明格式 (2)学习java对象的创建和调用 (3)学习参数传递 (4)学习类的私有成员的定义、访问方法已经共有成员的定义 (5)理解类的构造方法、构造方法的调用 (6)理解方法重载 (7)掌握静态成员和非静态成员的访问方式 (8)学习对象的赋值以及比较 二.实验软件环境 jdk1.6.0_18、windows 7 三.实验内容 (1)编写一个java程序,在程序中创建Student类的两个实例并访问他们的属性以及方法package https://www.doczj.com/doc/bc8495125.html,.javaoo.class070120; //Student.java class Student { String name; int age; int Chinese; int Math; int English; int total() { return Chinese+Math+English; } int average() { return (Chinese+Math+English)/3; } } package https://www.doczj.com/doc/bc8495125.html,.javaoo.class070120; //MyObject.java

class MyObject { public static void main(String args[]) { Student s1=new Student(); https://www.doczj.com/doc/bc8495125.html,="张三"; s1.age=13; s1.Chinese=80; s1.Math=90; s1.English=85; System.out.println("你好,我叫"+https://www.doczj.com/doc/bc8495125.html,+","+"我今年"+s1.age+"岁"); System.out.println("我的总分是"+s1.total()); System.out.println("我的平均分是"+s1.average()); Student s2=new Student(); https://www.doczj.com/doc/bc8495125.html,="李四"; s2.age=12; s2.Chinese=80; s2.Math=90; s2.English=90; System.out.println("你好,我叫"+https://www.doczj.com/doc/bc8495125.html,+","+"我今年"+s1.age+"岁"); System.out.println("我的总分是"+s2.total()); System.out.println("我的平均分是"+s2.average()); if(s1.total()>s2.total()) System.out.println(https://www.doczj.com/doc/bc8495125.html,+"的成绩好"); else if(s1.total()

java实验报告完整版

实验报告 (计算机与信息工程学院实验中心) 学期:2014-2015 课程名称:《Java程序设计实验》 班级:信息1202 姓名:方逸梅 学号:1212100231 指导老师:费玉莲

《Java程序设计》 独立实验教学安排 一、实验的教学方式、安排及实验环境 (一)教学方式 对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等内容,在教师的指导下,学生独立完成程序设计及调试工作。实验十二的内容由学生自行设计完成。 (二)教学安排 学时数:30课时 学时安排:每次实验3学时,从学期第五周开始,共十次上机实验。 (三)实验环境 实验环境为JDK 1.6。 (四)具体安排 地点:信息大楼实验室。 辅导:每个班次一名辅导老师,原则上由任课老师担任。 登记:实验完成,由辅导老师登记实验纪录。 学生:实验做完,完成实验报告内容,并在学期末上交实验册。 老师:批改实验,成绩与平时成绩一起占期末的30%。 二、实验的具体内容和要求 见实验报告。

浙江工商大学 计算机与信息工程学院实验报告(1)日期:地点:成绩: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 实验目的、实验原理和内容: 一、实验目的:熟悉Java开发环境及简单程序Java设计。 二、实验原理:SDK 的下载与安装,设置环境变量,安装java 虚拟机,使用Eclipse,编译Java 源程序,运行Java 程序。 三、实验内容及要求: 1.下载、安装并设置Java SDK 软件包。 2.熟悉Eclipse编辑软件。 3.掌握运行Java 程序的步骤。 4.分别编写Application和Applet程序,显示字符串”Hello Java!欢迎使用!”。 要求:请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。 程序一 public class hello { public static void main(String[] args) { for(int i=0;i<=4;i++) { System.out.println("Hello java! 欢迎使用!"); } } } 结果示意图1

JAVA实验报告参考

实验报告 实验名称工资管理程序第 2 次实验实验日期 2009- - 指导教师 班级 04软件工程学号姓名成绩 一、实验目的 1、掌握类的定义、域的定义及方法的定义。 2、掌握对象的定义与使用 3、掌握抽象类的用法 二、实验内容 1、建立一个抽象类Employee类 至少包括成员变量: 名、姓、年龄、性别 至少包括构造函数: 名和姓作为参数 至少包括方法: 取名称 至少包括抽象方法: 取收入earnings() 重写Object的toString()方法,返回Employee类的描述信息如名称信息 2、建立老板类Boss类继承Employee类 至少构造函数以名和姓及周工资作为参数 老板的工资是周工资 3、建立销售人员类 销售人员的收入= 销售量* 单价 要求:每个销售人员对象都能知道当前共有多少个销售人员 ... ... 4、在main函数中,分别创建老板对象、销售人员对象 三、实验步骤 3.1 进入eclips,创建一个名为employ的工程,新建一个抽象类Employee类 类中的成员变量有private String firstname; private String lastname; private String sex; private String age; 构造函数为employee(){} //无参数的构造函数 employee(String fn,String ln) //以名和姓为参数的构造函数 { this.firstname=fn; https://www.doczj.com/doc/bc8495125.html,stname=ln; } employee(String fn,String ln,String s,String a)//参数完整的构造函数 { this(fn,ln);

初识Java 实验报告

太原师范学院 实验报告 Experimentation Report of Taiyuan teachers College 系部计算机系年级课程Ja va实用教程 姓名同组者无日期2012.2.28 项目初识Java 实验①:一个简单的应用程序 1、实验目的: 掌握Java应用程序的3个步骤:编写原文件、变异原文件和运用应用程序。 2、实验要求: 编写一个简单的Java应用程序,该程序在命令窗口输出两行文字:“Hello Java” 和“We are students”。 3、实验代码: public class hello { public static void main (String args[]) { System.out.println("Hello Java"); A a=new A(); a.fA(); } } class A

{ void fA() { System.out.println("We are students"); } } 4、实验后的练习: ①编译器怎样提示丢失大括号的错误? Hello.java :18:进行语法解析时已到达文件结尾 }→ ^ ②编译器怎样提示语句丢失分号的错误? Hello.java :7:需要‘;’ System.out.println(“Hello Java”) ^ ③编译器怎样提示将System写成system这一错误? Hello.java :7:软件包system不存在 System.out.println(“Hello Java”); ^ ④编译器怎样提示将String写成string这一错误? Hello.java :5:找不到符号 符号:类string 位置:类hello Public static void main(string args[]) ^ 实验②:画出一个正弦函数的波形图 实验目的:掌握开发Java sin Applet程序的3个步骤:编写源文件、编译源文件和运行Java sin Applet程序 实验要求:编写一个简单的Java sin Applet程序,打印出正弦函数的图形。 实验代码: import java.applet.*; import java.awt.*; import java.awt.Color; public class sin extends Applet{ public void paint(Graphics g){ int x=0; int y=0; int i=0; for(i=0;i<360;i++) { x=(int)((i*Math.PI/180)*100); y=(int)(Math.sin((i*Math.PI)/180)*100)+200; g.drawString("*",x,y);

实验二 Java类-实验报告

南京信息工程大学实验(实习)报告 实验(实习)名称Java类实验(实习)日期 10.17 得分指导教师刘文杰院计算机与软件学院专业软件工程年级 2017级班次 1 姓名张成学号20171344024 1.实验目的: 1)熟练MyEclipse工具的使用与调试; 2)掌握Java类、方法和变量的定义和使用; 3)熟悉方法重载和覆盖、掌握this和supper关键字使用; 4)掌握4类访问控制符的使用。 2.实验内容: (1)定义一个类Circle,实现其面积计算功能getArea(); (2)编写程序,读入一个正整数并按降序显示它的所有最小因子。(教材第3章习题9)(3)利用多态性编程,实现求三角形、正方形和圆形的面积。(教材第4章习题6) 3.实验步骤 1、 public class Circle { public double radius; public Circle(double r) { radius= r; } public double getArea() { return radius*radius*Math.PI; } public static void main(String[] args) { Circle area1 = new Circle(5); System.out.println("The area is " + area1.getArea()); } }

2、 import java.util.Scanner; public class Read { public static void main(String[] args) { Scanner input =new Scanner(System.in); System.out.print("输入一个正整数:"); int n=input.nextInt(); int []a=new int[n]; int []b=new int[n]; int p,q=0,m=0; for(p=2;p<=n;p++) { while(n%p==0) { n=n/p; if(n!=1) { a[q]=p; q++; } else { a[q]=p; } } } while(q!=-1) { b[m]=a[q]; m++; q--; } for(p=0;p

JAVA实验报告

目录实验1 Java语言基础 实验2 数组和字符串编程 实验3 Java面向对象程序设计 实验4 Java异常处理 实验5 多线程编程 实验6 图形用户界面编程 实验7 输入与输出 实验8 网络编程 实验9 数据库编程

实验1 Java语言基础 一、实验目的和要求 1.实验目的 通过实验,掌握Java语言程序设计的基本方法。 学会Java语言中标示符的命名、运算符和表达式的应用。 熟练地掌握Java程序流程控制语句的应用。 2.实验内容 1.编写应用程序,计算100(含100)以内所有偶数的和。 2.“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。 3.编写一个程序,求1-100间的素数。 4.有一函数: x (x<1) Y= 3x-2 (1≤x<10) 4x (x≥10) 写一程序,给定x值,输出y值。 5.使用for循环语句,编写程序输出以下图案。 ☆ ☆☆☆ ☆☆☆☆☆ ☆☆☆☆☆☆☆ ☆☆☆☆☆ ☆☆☆ ☆ 6.编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是:①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。 二、源代码 1.package addsum; public class addsum { public static void main(String s[])

{ int sum=0; for(int i=0;i<=100;i=i+2) sum=sum+i; System.out.println(sum); } } 2.package addsum; public class shuixianhua { public static void main(String[] args) { int i, j, k; for (i = 1; i <= 9; i++) { for (j = 0; j <= 9; j++) { for (k = 0; k <= 9; k++) { if ((i * 100 + j * 10 + k) == (i * i * i + j * j * j + k * k * k)) System.out.println(i * 100 + j * 10 + k + "=" + i + "*" + i + "*"+i+"+" + j + "*" + j+ "*" + j + "+" + k+ "+" + k+ "+" + k); } } } } } 3.package addsum; public class prime { public static void main(String[] args) { System.out.println("100内的素数为:"); loop: for (int i = 2; i < 100; i++) { for (int j = 2; j < i; j++) { if (i % j == 0) { continue loop; } } System.out.print(" " + i); } } } 4.package addsum; import java.util.Scanner; public class question4 { public static void main(String[] args) { double x,y; System.out.print("请输入x:");

java实验报告(全)

学生学号0120910680526 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称软件工具与环境 开课学院计算机科学与技术学院 指导老师姓名付国江 学生姓名 学生专业班级软件工程0905 2011— 2012学年第1学期

实验课程名称: java语言程序设计 实验项目名称JDK安装与配置、简单的程序编写实验成绩 实验者专业班级软件0905 组别 同组者实验日期年月日第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 实验目的: 熟悉JDK的安装、配置和使用,掌握Java Application程序的基本结构。 实验内容: (1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量; (2)编写一个打印出”HelloWorld”的Java Application程序,并编译运行; 二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或 者算法描述) (1)jdk的安装 (2)”HelloWorld”的编译运行 三、主要仪器设备及耗材 个人计算机,jdk 第二部分:实验调试与结果分析(可加页) 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)(1)jdk的安装步骤: 1:双击jdk-6u10-windows-i586.exe安装文件 2:点击接受 3:点击下一步 4:选择JRE路径 5:点击下一步 6:完成 配置环境变量: 1:右键我的电脑,找到属性,高级中的环境变量 2:点击环境变量:3:系统变量针对所有用户,这里找到系统变量中的Path 点击编辑: 3:系统变量针对所有用户,这里找到系统变量中的Path 点击编辑: 4:在变量值末尾打上分号分隔,加入JDK库路径。 点击确定,完成! 5:变量配置好后。 6:测试环境是否好 在控制台中 输入javac指令,能显示参数,说明成功。

JAVA第四版实验2实验报告

实验1 1.实验要求: 编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。 2.实验内容: 3.实验分析: (1)将一个double型数据直接赋值给float型变量,程序编译时提示怎样的错误。 可能损失精度。 (2)在应用程序的main()方法中增加语句:float x=0.618,程序能编译通过吗? 不能通过编译,提示可能损失精度。 (3)在应用程序的main()方法中增加语句:byte b=128编译能通过吗?在应用程序的main()方法中增加语句:int z=(byte)128;程序输出变量z的值是多少? 增加byte b=128时编译不能通过,提示可能损失精度。 增加int z=(byte)128时结果如下所示。 实验2 1.实验要求: 编写一个Java应用程序,该程序在命令行窗口输出数组的引用以及元素的值。 2.实验内容:

3.实验分析: (1)在程序的【代码4】之后增加语句”a[3]=200;”,编译是否有错?运行是否有错? (2)在程序的【代码4】之前输出二维数组b的各个一维数组的长度和引用。

(3)在程序的【代码4】之后输出二维数组b的各个一维数组的长度和引用。

实验3 1.实验要求: 编写一个Java应用程序,输出数组a的全部元素,并将数组a的全部或部分元素复制到其他数组中,然后改变其他数组的元素的值,再输出数组a的全部元素。 2.实验内容: 3.实验分析:

(1)在程序的【代码4】之后增加语句:int []tom=Arrays.copyOf(c,6); System.out.println(Arrays.toString(tom)); (2)在程序的最后一个语句之后增加语句:int []jerry=Arrays.copyOf(d,1,8); System.out.println(Arrays.toString(jerry));

java实验报告4

实验4 Java 语言面向对象基础编程 一.实验目的 (1)通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想 (2)如何创建类和对象 二、实验要求 1、编写一个体现面向对象思想的程序; 2、编写一个创建对象和使用对象的方法的程序; 3、编写体现构造方法重载的程序; 三.实验内容 1、定义类创建类对象 设计类来描述真实客观世界中的事物,使用类的成员变量来表示事物的属性和状态,使用类的成员方法来提供对成员变量的访问或修改 (1)程序功能:设计一个用来描述汽车的类,使用类的非静态成员变量来表示汽车的车主姓名、当前的速率和当前方向盘的转向角度,使用类的非静态成员方法来表示改变汽车的速率和停车两个操作。 源代码:(自己编写) 创建类的对象,使用对象的方法(类的非静态方法)来访问或修改对象的变量(类的非静态变量) (1)创建上面第一步的类的对象,在调用类的构造函数时指定对象的变量的初始值,以后再使用对象的方法来访问或修改对象的变量的值。 源代码: 2、构造方法重载 构造方法的名称和类同名,没有返回类型。尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。因此,构造方法不能直接调用,只能由new 操作符调用。构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。 源代码如下: class RunDemo { private String userName, password; 在该处编写不带参数的构造方法

在该处编写带一个参数的构造方法 在该处编写带两个参数的构造方法 } public class EXP2 { public static void main(String[] args) { //使用不同的构造方法进行对象的初始化 } } 3、调用方法时参数传递的练习 在Java 中,方法中的参数传递可以分为传值调用或对象方法调用等方式。传值调用即传递的参数是基本数据类型,调用方法时在方法中将不能改变参数的值,这意味着只能使用它们。 3.1 编写一个传值调用的程序 (1) 程序功能:程序首先给整型变量x 和y 赋一个初值10,然后使用传值调用方式调用方法ff1对x 和y 做乘方及输出x 和y 的乘方值,最后再输出x 和y 的乘方值。 (2)编写源代码 (3)编译、运行源代码

java实验报告完整版

实验报告 (计算机与信息工程学院实验中心) 学期: 2014-2015 课程名称: 《Java程序设计实验》 班级: 信息1202 姓名: 方逸梅 学号: 1212100231 指导老师: 费玉莲 《Java程序设计》 独立实验教学安排 一、实验的教学方式、安排及实验环境 (一)教学方式 对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等内容,在教师的指导下,学生独立完成程序设计及调试工作。实验十二的内容由学生自行设计完成。 (二)教学安排 学时数:30课时 学时安排:每次实验3学时,从学期第五周开始,共十次上机实验。 (三)实验环境 实验环境为JDK 1、6。

(四)具体安排 地点:信息大楼实验室。 辅导:每个班次一名辅导老师,原则上由任课老师担任。 登记:实验完成,由辅导老师登记实验纪录。 学生:实验做完,完成实验报告内容,并在学期末上交实验册。 老师:批改实验,成绩与平时成绩一起占期末的30%。 二、实验的具体内容与要求 见实验报告。

浙江工商大学 计算机与信息工程学院实验报告(1)日期:地点:成绩: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━实验目的、实验原理与内容: 一、实验目的:熟悉Java开发环境及简单程序Java设计。 二、实验原理:SDK 的下载与安装,设置环境变量,安装java 虚拟机,使用Eclipse,编译Java 源程序,运行Java 程序。 三、实验内容及要求: 1. 下载、安装并设置Java SDK 软件包。 2. 熟悉Eclipse编辑软件。 3.掌握运行Java 程序的步骤。 4.分别编写Application与Applet程序,显示字符串”Hello Java!欢迎使用!”。 要求:请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。 程序一 public class hello { public static void main(String[] args) { for(int i=0;i<=4;i++) { System、out、println("Hello java! 欢迎使用!"); } } } 结果示意图1

Java实验三实验报告

实验报告 课程名称面向对象课程设计 实验项目名称类的继承 班级与班级代码13计算机科学与技术1班实验室名称(或课室)SS1 205 专业计算机科学与技术 任课教师尹华 学号:12251102120 姓名:林淑英 实验日期:2014 年4 月28 日 广东财经大学教务处制

姓名林淑英实验报告成绩 评语: 指导教师(签名) 年月日说明:指导教师评分后,实验报告交院(系)办公室保存。

实验三类的继承、多态、接口、访问控制符与修饰符 实验目的:通过编程练习掌握类的继承,多态,接口,访问控制符与修饰符的使用方法。 实验原理:类的继承,接口。 实验设备:计算机,Eclipse。 实验题目: 1.设计一个Person 类,其成员变量有:姓名(name)、性别(gender)、年 龄(age);再设计一个Student类,它是类Person的子类,其成员变量有:学号(id)、班名(cname)、成绩(score),类Student中要有一个方法 display(),用来显示一个学生的信息。 编写一个测试程序,创建一个Student类的对象,要求name和id 是自己的姓名和学号,输出学生的各种信息,学生的基本信息在类Student的带参数的构造方法中设定。 2.定义一个类A,该类有一个方法f,方法f可以输出英文字母,再定义 一个类B是A的子类,子类B不能重写父类A的方法f,子类有一个方法g,可以输出中文字符串。 编写测试程序,创建B的对象,输出英文字母和中文字符串。 3.定义一个坐标类Pointer,成员变量包括x和y;成员方法有: (1)构造方法 (2)setX、setY、getX、getY、display方法 (3)类方法distance用来计算两点之间的距离 编写测试程序,创建Pointer的两个对象并计算两个点坐标的距离。

JAVA实验报告

学生实验报告册 (理工类) 课程名称:面向对象程序设计专业班级:16计算机科学与技术(专转本)学生学号:22 学生姓名:张义丹 所属院部:计算机工程指导教师:刘晶 20 16 ——20 17 学年第2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告上交电子稿,标题采用四号黑体,正文采用小四号宋体,单倍行距。 实验报告书写说明 实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。教师可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用五级记分制或百分制,按《金陵科技学院课堂教学实施细则》中作业批阅成绩评定要求执行。

实验项目名称:Java编程基础实验学时: 6 同组学生姓名:————实验地点:工科楼A101 实验日期:实验成绩: 批改教师:刘晶批改时间:

实验1 Java编程基础 一、实验目的和要求 (1)熟练掌握及编写调试Java应用程序及Java小程序的方法; (2)熟练掌握Java应用程序的结构; (3)了解Java语言的特点,基本语句、运算符及表达式的使用方法; (4)熟练掌握常见数据类型的使用; (5)熟练掌握if-else、switch、while、do-while、for、continue、break、return语句的使用方法; (6)熟练掌握数组和字符串的使用; (7)调试程序要记录调试过程中出现的问题及解决办法; (8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验; (9)做完实验后给出本实验的实验报告。 二、实验仪器和设备 奔腾以上计算机,Windows 操作系统,装有和软件。 三、实验过程 (1)分别使用JDK命令行和Eclipse编译运行Java应用程序;适当添加注释信息,通过javadoc生成注释文档;为主方法传递参数“Hello world”字符串,并输出,记录操作过程。 public class Hello { public static void main(String args[]) { "Hello!"); } } (2)分别使用JDK命令行和Eclipse编译Java Applet,并建立HTML文档运行该Applet。 压缩生成".jar"文件。记录操作过程。 import .*; import class HelloApplet extends Applet { public void paint(Graphics g) { ; ("Hello!",20,20); } }

相关主题
文本预览
相关文档 最新文档