java实验第二次

合集下载

java第二次实验.doc

java第二次实验.doc

三、实验内容1、题目:利用数组实现斐波那契数列的输出2.实验程序代码:public class shulie{public static void main(String arg[]){int a[]=new int[20];a[0]=1;a[1]=1;int i,j;for(i=2;i<20;i++){a[i]=a[i-1]+a[i-2];}System.out.println("斐波那契数列的输出");for(i=0;i<20;i++){if(i%5==0){System.out.println();}System.out.print("a["+i+"]="+a[i]);}}}3.实验结果1.题目: 从键盘上输入10个数:(1)从小到大排序后(要求至少实现2中排序方式)输出。

(2)再从键盘上输入一个数,分别编写顺序查找和二分查找程序。

2.实验程序代码import java.util.Scanner;public class shuzu{public static void paixu1(int c[]) throws Exception //选择法{int i,j,temp,k,p,q;for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++){if(c[j]>c[k]) k=j;else{k=i;}if(k!=i){temp=c[k];c[k]=c[i];c[i]=temp;}}}for(i=0;i<10;i++){System.out.println("c[i]="+c[i]);}System.out.println("请输入查找的数字");Scanner s = new Scanner(System.in);q=s.nextInt();System.out.println("********************************************");System.out.println("请选择查找算法:");System.out.println("1:代表是顺序查找法");System.out.println("2:代表是折半查找法");System.out.println("********************************************");Scanner m = new Scanner(System.in);p=m.nextInt();if(p==1){sort1(c,q);}else{sort2(c,q);}}public static void paixu2(int b[]) throws Exception //冒泡法{int i,j,temp,p,q;for(i=0;i<9;i++)for(j=0;j<9-i;j++){if(b[j]>b[j+1]){temp=b[j];b[j]=b[j+1];b[j+1]=temp;}}for(i=0;i<10;i++){System.out.println("b[i]="+b[i]);}System.out.println("请输入一个寻找的数");Scanner s = new Scanner(System.in);q=s.nextInt();System.out.println("********************************************");System.out.println("请选择查找算法:");System.out.println("1:代表是顺序查找法");System.out.println("2:代表是折半查找法");System.out.println("********************************************");Scanner m= new Scanner(System.in);p=m.nextInt();if(p==1){sort1(b,q);}if(p==2){sort2(b,q);}}public static void sort1(int b[],int k) //顺序查找{int i,n=0;for(i=0;i<10;i++){if(b[i]==k){break;}else{n++;}}System.out.println(k+"在数组中的第"+n+"个位置");}public static void sort2(int b[],int k) //折半查找法{int start,end,i;for(start=0,end=9;start<end;){i=start+(end-start)/2;if(b[i]==k){System.out.println(k+"在数组中的第"+i+"个位置");break;}if(b[i]>k){end=i;}if(b[i]<k){start=i;}}}public static void main(String arg[])throws Exception{int i,n,m,p;Scanner s = new Scanner(System.in);int a[]= new int[10];for( i = 0; i < 10; i++)a[i]=s.nextInt();System.out.println("********************************************");System.out.println("请选择排序算法:");System.out.println("1:代表是选择法");System.out.println("2:代表是冒泡法");System.out.println("********************************************");Scanner z= new Scanner(System.in);n=z.nextInt();if(n==1){paixu1(a);}else{paixu2(a);}}}3,实验结果四实验总结1.java中开辟数组单元是用运算符new分配内存再赋值格式如下:数组名= new 数据类型[size]2.在java程序中如果需要从键盘输入数字,则需要在java开头输入import java.util.Scanner;,即定义scanner;在需要输入数字的地方输入:Scanner x=new Scanner(System.in);//构造一个Scanner对象,其传入参数为System.inint i=x.nextInt();//读取一个int数值.同时注意: 如果在函数中需要输入数字,则在开头必须输入throws Exception,避免出现错误.即:必须对其捕获或声明以便抛出。

实验二 Java类编程实验

实验二  Java类编程实验

实验二Java类编程实验实验目的1.掌握Java类的基本定义和使用方法2.熟悉Java语言的基本语法和运行原理3.掌握Java的基本数据类型、表达式和程序控制结构4.熟悉Eclipse开发环境的基本使用方法实验内容1. 对象的创建和使用使用集成开发环境编写一个圆环类Ring的Java程序。

圆环类有3个数据成员,分别是内半径innerRadius,外半径outerRadius和颜色color,这些属性通过get和set方法进行封装。

另外,圆环类中的getArea方法可以返回其面积。

把程序中的代码补充完整,并查看结果。

public class Ring {private double innerRadius;private double outerRadius;private String color;public Ring(double iRadius, double oRadius, String c) { //初始化数据成员}//用get和set方法封装数据成员public double getArea() {}public static void main(String[] args) {Ring ring = new Ring(5,8,"red");System.out.println("圆环的内半径: " +ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜色: " + ring.color);System.out.println("圆环的面积: " + ring.getArea() + "\n");ring.setInnerRadius(4);//设置圆环ring的外半径为6ring.setColor("blue");System.out.println("圆环的内半径: " + ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜色: " + ring.color);System.out.println("圆环的面积: " + ring.getArea());}}思考:1)将程序中的语句Ring ring = new Ring(5,8,"red"); 改成Ring ring = newRing();修改后编译运行,此时有错误发生吗?分析错误的原因。

java实验二试验报告

java实验二试验报告

姓名学号:班级:说明:实验2(类的继承,与接口的实现)1. 编一程序,求两个正整数m、n的最大公约数。

要求程序中有两个方法,分别使用循环和递归,最后在主方法中两次求解并输出最大公约数。

截图:代码:public class gcd {public static void main(String[] args) {int a = 6, b = 9;System.out.printf("two nums:%d %d\n", a, b);System.out.println("递归: " + gcd1(a, b));System.out.println("辗转相除: " + gcd2(a, b));}public static int gcd1(int m, int n){return m % n == 0 ? n : gcd1(n, m%n);}public static int gcd2(int m, int n){while(n != 0){int t = m;m = n;n = t % n;}return m;}}2. 使用类编写程序(在程序中定义类,然后在主方法中创建类的对象,并调用该类中的方法,观察所得结果。

)截图:代码:public class Date {public static void main(String[] args) {Date d = new Date();System.out.println(d);d.setYear(2011);d.setMonth(10);d.setDay(3);System.out.println(d);}public Date(){}public Date(int y, int m, int d){year = y; month = m; day = d;}public void setYear(int new_year){ this.year = new_year;} public void setMonth(int m){ this.month = m; }public void setDay(int d){ this.day = d; }public String toString(){return new String("" + year + "/" + month + "/" + day);}public int year = 2000, month = 1, day = 1;}3. 编写一个包含圆类的程序,并为圆类设计几个构造方法,编译并运行它。

JAVA实验报告Y.Daniel Liang第二次实验

JAVA实验报告Y.Daniel Liang第二次实验

2014-2015学年第一学期实验报告课程名称:Java SE 平台技术实验名称:JA VA编程(基础练习)姓名:学号:成绩:指导教师:日期:目录一、实验目的 (3)二、实验内容 (3)2.1 构建一个继承类。

(3)2.2 抽象类和接口的使用 (3)2.3 图像类编程和事件驱动程序。

(3)三、实验环境 (3)四、实验结果 (3)4.1构建继承类 (3)4.2抽象类和接口的使用 (3)4.3 事件驱动程序 (3)五、附录 (4)5.2 设计方案 (4)5.1构建继承类 (4)5.2抽象类和接口的使用 (4)5.3 事件驱动程序 (4)5.2 设计方案 (4)5.1构建继承类 (4)5.2抽象类和接口的使用 (4)5.3 事件驱动程序 (4)5.3 算法 (4)5.3.1 三角形继承类 (4)5.3.2 抽象类与接口 (5)5.3.3 画出小车 (5)5.4. 设计图 (6)5.4.1 三角形类UML设计图 (6)5.4.2.1 Colorable接口UML设计图 (7)5.4.2.2 CompareTo与Clone接口UML设计图 (8)5.4.3 小车UML设计图 (9)5.5 仿真结果 (9)5.5.1构建继承类 (9)5.5.2抽象类和接口的使用 (9)5.5.3 事件驱动程序 (10)5.6 调试心得 (10)5.6.1 错误分析 (10)5.6.2 心得与收获 (10)一、实验目的通过使用JA V A语言进行基本程序的开发,掌握JA V A通用IDE,练习类的封装使用、JA V A基本类库的使用、利用UML进行简单建模。

二、实验内容2.1 构建一个继承类。

2.2 抽象类和接口的使用2.3 图像类编程和事件驱动程序。

三、实验环境Eclipse、Win 8.1四、实验结果4.1构建继承类输出了三角形的三边长,面积,周长。

4.2抽象类和接口的使用4.2.1执行Colorable接口,输出了一条how to color的信息4.2.2执行Comparable 和Cloneable接口,输出了创建的五边形和克隆五边形的周长和面机的信息。

java实验2实验报告

java实验2实验报告

reader=new Scanner(System.in); standard=reader.nextLine(); }while(!"no".equals(standard)); } } 四、运行结果与测试分析 1.程序分析: 首先,在 TestException 这个类中除了 main 方法和一个无参数构造函数之外,还有另外 3 个方法:testEx()、testEx1()和 testEx2()。它们的返回值都是布尔型,且都可能抛出异 常。程序从 main 方法开始执行,首先创建了一个 TestException 类的对象 testException1, 然后进入 try 语句块,用对象 testException1 调用函数 testEx,程序开始执行 testEx 函 数的函数体。在函数 testEx 的 try 块中调用了函数 testEx1,于是又转向执行 testEx1 的 函数体,但在它的 try 块中又调用了 testEx2(),于是程序转向执行 testEx2 的函数体。 在 testEx2 的 try 块中的 for 循环中,前两次循环正常执行,分别输出 i=2 和 i=1,但第 三次循环时出错(出现了除数 i 为 0 的情况),抛出异常并被本函数中的 catch 语句捕获, 输出“testEx2,catch exception”,把 ret 的值赋成 false,并抛出原异常,但在离开本 函数之前还要执行 finally 中的语句,于是输出“testEx2,finally; return value=false” 并返回 ret 的值 false,由于 finally 语句中使用了 return 语句,所以导致异常丢失,接 着程序返回 testEx2 的调用者 testEx1 中,由于 testEx2 的返回值为 false,故 testEx1 中的 ret 为 false,if 语句条件为真,返回 false,但在离开 testEx1 之前,要执行 finally 中的语句,于是输出“testEx1,finally; return value=false”并返回 ret 的值 false (由于 finally 语句中使用了 return 语句,所以 try 区域中 return 语句的返回值被覆盖)。 流程转到 testEx 中,由于 testEx1 返回 false,故 testEx 中的 ret 为 false,接着执行 finally 中的语句,输出“testEx,finally;return value=false”并返回 ret 的值 false。 接着流程返回到 main 函数中,程序正常结束。运行结果截图如下:

java实验二附答案

java实验二附答案

Java实验二实验二类与对象实验目的1、掌握面向对象程序设计的方法和Java作为面向对象程序设计语言的特点;2、掌握修饰符和构造方法的使用规则;3、掌握接口的特点、结构、调用和继承;4、掌握如何创建包,通过包如何管理类;5、掌握Java的继承机制和实现多态的方法实验内容(1)定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。

SetRecord赋值学号、姓名和成绩,GetRecord通过学号得到考生的成绩。

通过实例验证编程无误。

(2)定义一个接口Area,其中包含一个计算面积的抽象方法calculateArea(),然后设计Circle和Rectan两个类实现这个接口的方法calculateArea(),分别计算圆和矩形的面积。

通过实例验证编程无误。

(3)假定根据学生的3门学位课程的分数决定其是否可以拿到学位,对于本科生,如果3门课程的平均分数超过60分即表示通过,而对于研究生,则需要平均分超过80分才能够通过。

根据上述要求,请完成以下Java类的设计:(i)设计一个基类Student描述学生的共同特征。

(ii)设计一个描述本科生的类Undergraduate,该类继承并扩展Student类。

(iii)设计一个描述研究生的类Graduate,该类继承并扩展Student类。

(iv)设计一个测试类StudentDemo,分别创建本科生和研究生这两个类的对象,并输出相关信息附实验一名称是Java语言基础实验报告分为以下几个部分一实验名称二实验目的三实验仪器四实验步骤(把你的操作一步一步写清楚,java 程序代码要写)五实验结果(程序运行后的结果就是DOS环境下运行出来的结果写在实验报告上)六实验讨论(实验过程中的错误及如何改正,你的心得体会等)答案:(1)定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。

java第二次实验

java第二次实验
源代码如下:
四、思考题
1. 说明什么是构造方法,构造方法有哪些特点? 2. 如果程序中有多个类时,如何来确定源程序文件的名称?
答:1、构造方法是类中的一种特殊方法,当程序用类创建对象时需使用他的构造方法, 类中的构造方法的名字必须与他所在的类的名字完全相同,而且没有类型。注意 void point()和 int point()都不是构造方法。
//存款
public void getmoney (double money){ //取款 leftmoney-=money; }
public BankAccount (int number, double money){ //构造方法,用来初始化变量 account_number=number; leftmoney=money; } public static void main(String args[]) {
2、编写一个帐户类实现银行帐户的概念,创建帐户类的对象,完成存款与取款等操作。
三、实验内容:
1、1. 编程创建一个 Box 类
(length)、宽(width)和高(heigth),再定义一个方法 void setBox(int l, int w, int h) 对这三个变量 进行初始化,然后定义一个方法 int volume ()来计算长方体的体积。最后,在 main()方法中 创建一个 Box 类的对象 b,首先通过调用对象 b 的 setBox()方法来设置长方体的长、宽和高, 再通过调用对象 b 的 volume() 方法来计算这个给定尺寸的长方体的体积,并输出这个结果。
int account_number; double leftmoney;
public double getleftmoney (){ //查询余额

java实验报告实验2答案

java实验报告实验2答案

实验二熟悉Applet,GUI编程实验目的:本实验旨在巩固同学们对上课所讲Applet,异常处理,java的控制加深理解,图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,对java的语法和编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。

了解如何使用布局管理器对组件进行管理,以及如何使用Java的事件处理机制。

实验内容:创建一个java项目,命名为experiment2。

(如何创建项目参考《实验一》的项目创建方法。

)(一)创建图形用户界面图形用户界面(Graphic User Interface ,简称GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。

组件(Component)是构成GUI的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。

组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如Applet、Panel(面板)、Frame(窗口)等。

通过容器的add方法把组件加入到容器中。

1.在Applet中添加标签、按钮并使用网格布局(1)程序功能在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。

(2)编写LX6_1.java 程序文件,源代码如下:import java.awt.*;import java.applet.Applet;public class LX6_1 extends Applet{Label l1;Button b1, b2, b3, b4, b5, b6;public void init(){setLayout(new GridLayout(3,3)); // 设置网格布局(3 行3 列共9 个网格)l1=new Label("标签1");b1 = new Button("按钮1");b2 = new Button("按钮2");b3 = new Button("按钮3");b4 = new Button("按钮4");add(l1);add(b1);add(b2);add(b3);add(new Label());add(b4);add(new Button("按钮5"));add( new Button("按钮6"));add(new Label("标签2"));}}(3)编译程序LX6_1.java。

Java实验二实验报告

Java实验二实验报告

本科学生实验报告(二)姓名学院计算机科学学院专业计算机科学与技术班级实验课程名称Java面向对象设计试验时间2012年10 月14日指导教师及职称实验成绩开课时间2012—2013学年第一学期实验管理中心印制实验题目类与对象小组合作是○否⊙姓名班级学号一、实验目的1、熟悉Java面向对象程序设计的基本思想。

2、掌握类与对象的定义及使用方法。

3、掌握package语句与import语句的用法。

4、掌握java 继承中父类及其子类的定义方法。

5、掌握子类重写父类同名方法的方法。

6、掌握用法。

二.实验环境JDK1.6和Eclipse3.4.1开发环境三、实验内容与步骤一、分别定义三角形、梯形和圆形类,要求每个类中包含构造方法、求周长及面积的方法1、程序代码如下class Trangle {double sideA,sideB,sideC,area,length;boolean boo;public Trangle(double a,double b,double c){sideA=a;sideB=b;sideC=c;//参数a,b,c分别赋值给sideA,sideB,sideCif(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式{boo=true; //给boo赋值。

}else{boo=false; //给boo赋值。

}}double getLength(){if(boo){length=sideA+sideB+sideC;return length;}else{System.out.println("不是一个三角形,不能计算周长");return 0;}//方法体,要求计算出length的值并返回}public double getArea(){if(boo){double p=(sideA+sideB+sideC)/2.0;area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ;return area;}else{System.out.println("不是一个三角形,不能计算面积");return 0;}}public void setABC(double a,double b,double c){sideA=a;sideB=b;sideC=c; //参数a,b,c分别赋值给sideA,sideB,sideCif(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式{boo=true; //给boo赋值。

Java课程第二次实验报告

Java课程第二次实验报告

实验报告(2015 / 2016 学年第 2 学期)课程名称JAVA语言程序设计实验名称Java方法和数组的使用、类和对象实验时间年月日指导单位指导教师学生姓名学院(系)班级学号专业实验名称Java方法和数组的使用、类和对象指导教师朱艳梅实验类型上机实验学时2实验时间2016-4-21一、实验目的1.复习三大控制结构,会编写相关程序2.熟练掌握 java 方法的编程3.学会使用 java 的数组4.掌握类的基本概念,会编写简单的类二、实验环境 ( 实验设备 )1.每位学生配备计算机一台2.计算机需安装好 JDK 和 JCreator三、实验内容1.编写程序,打印出 100~999 中所有的“水仙花数”。

所谓“水仙花数”是指一个 3 位数,其各位数字的立方和等于该数本身。

例如:153 是一个“水仙花数”,因为153=13+53+33。

要求定义一个方法:public static boolean judge(int n):用于判断 n 是否是水仙花数;按下面结构完成本程序:public class ShuiXianShu{public static boolean judge(int n){...}public static void main(String args[]){...}}程序:package水仙花数;public class Flower {public static void main(String[] args) {//TODO自动生成的方法存根 int i=0;for (i=100;i<=999;i++){if ( judge (i)){System. out .printf("%d " ,i);}}}public static boolean judge( int n){int a,b,c;a = n%10;b = (n/10)%10;c = (n/100)%10;if (n==a*a*a+b*b*b+c*c*c)return true ;elsereturn false;}}运行结果:2.求斐波那契数列的第 n 项, n 从键盘输入。

java实验指导书上课后实验二实验报告

java实验指导书上课后实验二实验报告

import java.io.*;public class SimpleCharInOut{public static void main(String args[]){char ch=' ';System.out.print("Enter a character please:");try{ch=(char)System.in.read();}catch(IOException e){};System.out.println("You've entered character:"+ch); }}1、代码<html><head><title>Test</title></head><body><hr><applet code=Testwidth=300height=200></applet></body></html>实验二1、源代码:(1)import java.applet.Applet;import java.awt.*;import java.awt.event.*;public class SimpleGraphicsInOut extends Applet implements ActionListener{Label prompt;TextField input;Label output;public void init(){prompt = new Label("Enter a character please:");input = new TextField(3);output = new Label(" ");add(prompt);add(input);input.addActionListener(this);add(output);}public void actionPerformed(ActionEvent e){output.setText("you are entered character:"+input.getText()); } }(2)<html><head><title>SimpleGraphicsInOut</title> </head><body><hr><applet code=SimpleGraphicsInOut width=300height=200></applet></body></html>2、实验结果截图(1)实验三1、源代码:import java.awt.*;import java.awt.event.*;public class GraphicsAppInOut{public static void main(String args[]) {ApplctFrame MyFrame=new ApplctFrame(); } }class ApplctFrame extends Frame implements ActionListener {Label prompt;TextField input;Label output;ApplctFrame(){super("Application Graphics Frame"); setLayout(new FlowLayout());prompt=new Label("Enter a character please:"); input=new TextField(4);output=new Label(" ");add(prompt);add(input);add(output);input.addActionListener(this);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent we) {System.exit(0);}});setSize(500,100);setVisible(true);}public void actionPerformed(ActionEvent e) {output.setText("character:"+input.getText()); } }。

Java实验二

Java实验二

《JAVA2程序设计》实验报告班级: B07514 伙伴:实验名称:企业内部员工通讯录一实验目的:1.学会创建对象类及操作类。

2.完成对数据类属性的封装。

3.掌握继承的使用。

4.定义接口类并实现接口。

二实验内容:1.编写一个员工类,一个员工操作类和一个测试类。

其中员工类中包含员工的基本信息:编号(主键,只读),姓名,性别,密码,年龄,联系电话,职称,职务,电子邮件,以及构造函数和对这些信息进行操作的get和set函数。

员工操作类中包括对员工信息的增、删、查、改四个方法,在增加员工信息的方法中,写存根程序模拟添加的过程,并在test测试类中进行测试。

2.在1的基础上,编写一个经理类继承员工类,除具有员工基本信息外,还有:任职部门,主管信息,创建一个接口,并且使员工类和经理类都实现这个接口。

其中接口中有四个抽象方法:增、删、查、改。

3.模拟现实进行按条件查询,查询结果存放在Vector的对象中,在Test类中进行测试。

三实验步骤:代码1.员工信息类Emppackage com.nciae.juan.objectpublic class Emp {private int eno; //编号private String ename; //姓名private String esex; //性别private String epas; //密码private int age; //年龄private String etel; //联系电话private String epn; //职称private String epos; //职务private String email; //电子邮件public String getEname() {return ename;}public void setEname(String ename) { this.ename = ename;}public String getEsex() {return esex;}public void setEsex(String esex) { this.esex = esex;}public String getEpas() {return epas;}public void setEpas(String epas) { this.epas = epas;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getEtel() {return etel;}public void setEtel(String etel) { this.etel = etel;}public String getEpn() {return epn;}public void setEpn(String epn) { this.epn = epn;}public String getEpos() {return epos;}public void setEpos(String epos) { this.epos = epos;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public int getEno() {return eno;}public Emp(String ename,String esex,int age,String epn,String epos,String etel,String email,String epas){super();this.age = age;this.email = email;this.ename = ename;this.epas = epas;this.epn = epn;this.epos = epos;this.esex = esex;this.etel = etel;}}2.经理类Managerpackage com.nciae.juan.object;public class Manager extends Emp {private String bumen; //主管部门private String content; //主管内容public Manager( String ename,String esex,int age,String epn, String epos,String etel, String email, String epas,String bumen,String content) {super(ename,esex,age,epn, epos, etel, email,epas);// TODO Auto-generated constructor stubthis.bumen=bumen;this.content=content;}public String getBumen() {return bumen;}public void setBumen(String bumen) {this.bumen = bumen;}public String getContent() {return content;}public void setContent(String content) {this.content = content;}}3.员工操作类EmpSyspackage com.nciae.juan.dao;import java.util.Vector;import com.nciae.juan.interfaces.Basedao;import com.nciae.juan.object.Emp;import com.nciae.juan.object.Manager;public class EmpSys implements Basedao{private static final String Emp = null;public boolean delete(int eno) {return false;}public boolean add(Object obj){if(obj instanceof Manager){Manager manager=(Manager)obj;String sq2="insert intoManager(ename,esex,epas,eage,etel,epn,epas,email,bumen,content)" +"values('"+manager.getEname()+"','"+manager.getEsex()+"','"+manager.getEpas()+"',"+manager.getAge()+",'"+manager.getEtel()+ "',"+manager.getEpn()+"','"+manager.getEpas()+"','"+manager.getEmail ()+"')"+manager.getBumen()+"','"+manager.getContent()+"')";System.out.println(sq2);return false;}if(obj instanceof Emp){Emp emp=(Emp)obj;String sql="insert intoEmp(ename,esex,epas,eage,etel,epn,epas,email) "+"values('"+emp.getEname()+"','"+emp.getEsex()+"','"+emp.getEpas ()+"',"+emp.getAge()+",'"+emp.getEtel()+"',"+emp.getEpn()+"','"+emp.getEpas()+"','"+emp.getEmail()+"')";System.out.println(sql);return false;}return false;}@Overridepublic Vector search(Object obj) {Vector vec=new Vector();for(int i=0;i<10;i++){Emp emp=newEmp("xiaoming","nv",20,"jiangshi","fuzhuren","123","f@123","456");vec.add(emp);}return vec;}@Overridepublic boolean update(Object oldobj, Object newobj) { Emp empold=(Emp)oldobj;}}4.接口类Basedaopackage com.nciae.juan.interfaces;import java.util.Vector;public interface Basedao {boolean add(Object obj);boolean delete(int eno);boolean update(Object oldobj,Object newobj);}5.测试Testpackage com.nciae.test;import java.util.Vector;import com.nciae.juan.dao.EmpSys;import com.nciae.juan.object.Emp;import com.nciae.juan.object.Manager;public class Test {public static void main(String args[]){Emp emp1=new Emp("zhangsan","男",23,"讲师","主任","7882345","a@132","123");EmpSys empsys=new EmpSys();Manager manager=newManager("lisi","nv",22,"fujiaoshou","fuzhuren","333","jj@134d","dd" ,"jisuanji","wangluo");empsys.add(emp1);Vector vect=new Vector();Object obj=null;vect=empsys.search(obj);for(int i=0;i<vect.size();i++){Emp emp2=(Emp)vect.get(i);System.out.println(emp2.getEname());}}}执行结果四遇到问题和解决方法:本次实验遇到的最主要的问题是如何连接数据库,在和同学的探讨中,我理解到连接数据库的实质即用java语言表示sql环境下的命令语句。

java实验报告实验2答案(共5篇)

java实验报告实验2答案(共5篇)

java实验报告实验2答案(共5篇)第一篇:java实验报告实验2答案互联网软件应用与开发实验指导书实验二熟悉Applet,GUI编程实验目的:本实验旨在巩固同学们对上课所讲Applet,异常处理,java的控制加深理解,图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,对java的语法和编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。

了解如何使用布局管理器对组件进行管理,以及如何使用Java的事件处理机制。

实验内容:创建一个java项目,命名为experiment2。

(如何创建项目参考《实验一》的项目创建方法。

)(一)创建图形用户界面图形用户界面(Graphic User Interface,简称GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。

组件(Component)是构成GUI的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。

组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如Applet、Panel(面板)、Frame(窗口)等。

通过容器的add方法把组件加入到容器中。

1.在Applet中添加标签、按钮并使用网格布局(1)程序功能在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。

(2)编写LX6_1.java 程序文件,源代码如下:import java.awt.*;import java.applet.Applet;public class LX6_1 extends Applet { Label l1;Button b1, b2, b3, b4, b5,b6;public void init(){互联网软件应用与开发实验指导书setLayout(new GridLayout(3,3));// 设置网格布局(3 行3 列共9 个网格)l1=new Label(“标签1”);b1 = new Button(“按钮1”);b2 = new Button(“按钮2”);b3 = new Button(“按钮3”);b4 = new Button(“按钮4”);add(l1);add(b1);add(b2);add(b3);add(newLabel());add(b4);add(new Button(“按钮5”));add(new Button(“按钮6”));add(new Label(“标签2”));} }(3)编译程序LX6_1.java。

JAVA第四版实验2实验报告

JAVA第四版实验2实验报告

实验11.实验要求:编写一个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时结果如下所示。

实验21.实验要求:编写一个Java应用程序,该程序在命令行窗口输出数组的引用以及元素的值。

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

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

实验31.实验要求:编写一个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));阳谷一中2014—2015学年第二学期阶段测试高二政治试题第I卷选择题(共70分)一、选择题(本大题共50小题,1-40每小题1.5分,共60分;41-50为附加题,每小题1分,共10分。

Java课程第二次实验报告材料第10周

Java课程第二次实验报告材料第10周
inta1[][]=new int[10][5];
intsum=0;
for(inti=0;i<10;i++)
{for(intj=0;j<5;j++)
#43;1);
a1[i][j]=rand;
sum+=a1[i][j];
System.out.print(a1[i][j]+" ");}
public static voidmain(String args[]){
String input1=JOptionPane.showInputDialog("please input first number:");
String input2=JOptionPane.showInputDialog("please input second number:");
实验报告
(2013 / 2014学年第2学期)
课程名称
JAVA语言程序设计
实验名称
Java异常处理的程序设计、GUI综合应用开发
实验时间
2014

4

22

指导单位
计算机学院/软件学院
软件工程系
指导教师
朱云霞
学生姓名
谢某某
班级学号
学院(系)
人文与社会科学学院
专业
公共事业管理
实验名称
Java异常处理的程序设计、GUI综合应用开发
int a , b;
a= Integer.parseInt(input1.getText());
b= Integer.parseInt(input2.getText());

第二次java实验

第二次java实验

第七次实验:GUI标准组件及事件处理一、实验目的了解图形用户界面基本组件:框架、面板、按钮、标签、菜单、列表等的使用方法;了解如何使用布局管理器对组件进行管理;理解和掌握Java 的事件处理机制。

二、实验要求1. 了解Java图像用户界面的开发,掌握基本组件的使用。

2. 掌握编写独立运行的窗口界面的方法,了解菜单和对话框的使用方法。

3. 理解Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。

三、实验内容(一)在面板中添加多个组件,并进行合理的布局♦程序功能:在一个框架(Frame)容器中添加一个面板(Panel)容器,并分别在框架和面板容器中添加组件并使用不同的布局管理方式。

♦请编写KY7_1.java 程序文件,源代码如下:import java.awt.*;import java.awt.Color;public class KY7_1{public static void main(String args[]){Frame f = new Frame(); //创建一个框架fPanel p = new Panel(); //创建一个面板pf.add(p); //把面板p添加到框架f中p.setBackground(Color.blue); //设置面板p的背景颜色为蓝色p.setLayout(new FlowLayout()); //设置面板p的布局为流式布局Label l = new Label();p.add(l); //在面板p中添加一个标签lButton button1 = new Button();Button button2 = new Button();Button button3 = new Button();Button button4 = new Button();Button button5 = new Button();Button button6 = new Button();p.add(button1);p.add(button2); p.add(button3); p.add(button4); p.add(button5); p.add(button6); //在面板p 中添加六个按钮 Choice c=new Choice(); // 创建一个下拉列表c , c.addItem("北京"); // 下拉列表c 中有三个选项:北京、上海和天津 c.addItem("上海"); c.addItem("天津"); p.add(c); //把列表c 添加到面板p 中f.setBounds(400,400,400,400); f.setVisible(true);f.validate(); //设置框架f 的大小和可见性}}(二)为窗口添加菜单,并处理由菜单项所引发的事件♦ 程序功能:在窗口中添加菜单条,在菜单条中添加菜单,并在菜单中添加菜单项和子菜单。

Java实验2

Java实验2

Java实验2验2类和对象一、实验目的:1、学习定义类和使用类创建对象。

2、掌握对象变量和普通变量的区别,学习掌握使用对象调用其成员的方法。

3、学习掌握类的构造方法。

4、学习掌握给方法传递对象。

5、学习掌握类的静态变量和静态方法。

二、实验任务:1、创建Java程序,学习类的定义、使用类创建对象、通过对象调用其成员、类的构造方法的作用、如何给方法传递对象、掌握静态变量、静态方法的用法。

程序要求:(1)首先创建Circle类表示平面上的圆,要求该类具备构造方法,以初始化表示半径的私有数据成员radius;具备求圆面积的方法;还要具备一个静态数据成员numOfObjects,用来统计程序运行过程中创建圆对象的个数。

(2)创建一个静态方法public static void printCircle(Circle c),功能是输出参数圆对象c的相关信息,包括半径和面积的值。

(不是Circle的成员方法)(3)程序运行中创建2个以上的圆对象,分别输出相关信息,并统计输出对象的数目。

2、创建Java程序,进一步学习上述的内容以及关键字this的使用和类抽象的概念。

程序要求:(1)首先创建有理数类Rational,该类包含构造方法和加、减、乘、除方法。

(2)程序主方法中创建两个有理数对象,分别进行加、减、乘、除运算,并输出运算结果。

三、实验步骤:1、按照任务1的要求创建一个表示圆形的Circle类。

2、按照任务1的要求创建一个类TestInstanceAndClassVariable,其中包含静态方法public static void printCircle(Circle c)和程序的主方法main,在main方法中创建两个或多个Circle对象,调用printCircle(Circle c)方法显示每个Circle对象的相关信息,最后统计程序中所有创建的Circle 类对象的数目。

实验代码:public class TestInstanceAndClassVariable{public static void main(String[]args) {Circle circle1=new Circle();System.out.println("Beforecreatingcircle2");System.out.print("circle1is:");printCircle(circle1);Circle circle2=new Circle(5);circle1.setRadius(9);System.out.println("\nAftercreatingcircle2andmodifying"+"circle1' sradiusto9");System.out.print("circle1is:");printCircle(circle1);System.out.print("circle2is:");printCircle(circle2);}public static void printCircle(Circle c){System.out.println("radius("+c.getRadius()+")andnumberofCircleobject s("+c.getNumOfObjects()+")");}}class Circle{private double radius;private static int numOfObjects=0;public Circle(){radius=1.0;numOfObjects++;}public Circle(double r){radius=r;numOfObjects++;}public double getRadius(){return radius;}public void setRadius(double newRadius){radius=newRadius;}public static int getNumOfObjects(){return numOfObjects;}public double findArea(){return radius*radius*Math.PI;}}实验结果:// Find GCD of two numbersprivate long gcd(long n, long d){long t1 = Math.abs(n);long t2 = Math.abs(d);long remainder = t1%t2;while (remainder != 0){t1 = t2;t2 = remainder;remainder = t1%t2;}return t2;}// Getter method for numeratorpublic long getNumerator(){return numerator;}public long getDenominator(){return denominator;}// Add a rational number to this rationalpublic Rational add(Rational secondRational){long n = numerator*secondRational.getDenominator() +denominator*secondRational.getNumerator();long d = denominator*secondRational.getDenominator();return new Rational(n, d);}// Subtract a rational number from this rationalpublic Rational subtract(Rational secondRational){long n = numerator*secondRational.getDenominator()- denominator*secondRational.getNumerator();long d = denominator*secondRational.getDenominator();return new Rational(n, d);}// Multiply a rational number to this rationalpublic Rational multiply(Rational secondRational)long n = numerator*secondRational.getNumerator();long d = denominator*secondRational.getDenominator();return new Rational(n, d);}// Divide a rational number from this rationalpublic Rational divide(Rational secondRational)throws RuntimeException{if (secondRational.getNumerator() == 0)throw new RuntimeException("Denominator cannot be zero");long n = numerator*secondRational.getDenominator();long d = denominator*secondRational.getNumerator();return new Rational(n, d);}// Override the toString() methodpublic String toString(){if (denominator == 1)return numerator + "";elsereturn numerator + "/" + denominator;}}public class TestRationalClass{// Main methodpublic static void main(String[] args){// Create and initialize two rational numbers r1 and r2.Rational r1 = new Rational(4, 2);Rational r2 = new Rational(2, 3);// Display resultsSystem.out.println(r1.toString() + " + " + r2.toString() + " = " + (r1.add(r2)).toString());System.out.println(r1.toString() + " - " + r2.toString() + " = " + (r1.subtract(r2)).toString());System.out.println(r1.toString() + " * " + r2.toString() + " = " + (r1.multiply(r2)).toString());System.out.println(r1.toString() + " / " + r2.toString() + " = " + (r1.divide(r2)).toString());}实验截图:四、实验结果通过本次实验,我掌握了静态变量和静态方法的使用方法和使用环境。

JAVA 课后实验二

JAVA 课后实验二

课后实验报告(二)
1、编写程序实现摄氏温度和华氏温度的转换。

2、利用if语句实现阶梯电费的问题:用电量240度以下(包含240度)每度电0.55元,用电量在240-540度之间,超出240度电的部分按0.70元计算,用电量超过540度电,超出540度电的部分按照0.95元计算。

(使用scanner方法输入电数)
3、利用switch语句实现判断某年的某个月份有几天的程序。

4、嵌套循环(for + while)实现1!+2!+3!+ ... 9!即阶乘之和
5、水仙花数是指其个位、十位和百位上三个数的立方之和等于这个数本身。

通过循环,判断100-999之间所有的数字,符合水仙花数条件的数字。

(例如:1^3 + 5^3 + 3^3 = 153)
6、编写程序输出1--200之间的所有素数。

7、尝试分别用三层循环、两层循环、一层循环编程实现“百钱买百鸡”问题。

母鸡5分钱一只,公鸡三分钱一只,小鸡一分钱三只,现在有百钱欲买百鸡,有多少种买法?
三层循环:
二层循环:
一层循环:。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验04:运算符和表达式
实验08:数组
实验11:面向对象编程基础(二)方法中的参数传递
c1引用的牌是:HJ c2引用的牌是:HK
第11张牌是:HJ 第13张牌是:HK
第11张牌是:HJ 第13张牌是:HK
原来c1,c2指向的是cards[10] HJ,cards[12] HK,执行交换操作:
public static void swap1(Card c1, Card c2) {
Card c = c1;
c1 = c2;
c2 = c;}
c1,c1,c2,c2是四个不同的句柄,局部的句柄交换了地址的指向,不影响主函数中的句柄指向。

2) 在main方法中,去掉刚才添加的语句,添加下面几行语句,写出并分析结果
swap1(10,12);
System.out.println("执行swap1(10,12)后");
System.out.println("c1引用的牌是:"+c1+"\tc2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+"\t第13张牌是:"+cards[12]);
执行swap1(10,12)后
c1引用的牌是:HJ c2引用的牌是:HK
第11张牌是:HK 第13张牌是:HJ
如图在swap1(10,12)中交换了card[10],card[12]的地址指向71,73
但是c1,c2的地址指向没有改变。

所以最后输出
c1引用的牌是:HJ c2引用的牌是:HK
第11张牌是:HK 第13张牌是:HJ
3) 在main方法中,去掉刚才添加的语句,添加下面几行语句,写出并分析结果
swap2(c1,c2);
System.out.println("执行swap2(c1,c2)后");
System.out.println("c1引用的牌是:"+c1+"\tc2引用的牌是:"+c2);
System.out.println("第11张牌是:"+cards[10]+"\t第13张牌是:"+cards[12]);
执行swap2(c1,c2)后
c1引用的牌是:HK c2引用的牌是:HJ
实验18:异常
System.out.println("和为:"+sum);
}
}
catch(NoOprandException | OnlyOneException e)
{
System.out.println("自定义异常:"+e.toString());
}
}
}
4.为实验15(5),添加一个取款异常WithdrawException,请定义异常类
WithdrawException,要求:
1)异常对象记录取款发生时的帐户余额、取款额还有取款人。

相关文档
最新文档