Java课程第三次实验报告

合集下载

java实验报告总结_java总结范文

java实验报告总结_java总结范文

java实验报告总结_java总结范文Java是一种功能强大的编程语言,近年来随着互联网的迅速发展,Java已经成为软件行业的主流开发语言。

本次实验旨在帮助学生熟悉Java的基本语法和算法,加强学生对Java的理解和应用能力。

实验工具本次实验使用的开发环境是Eclipse + JDK1.8,Eclipse是开源的Java集成开发环境,JDK1.8是Java Development Kit(Java开发工具包)的一个版本。

实验步骤1.实验一-Hello World!本实验是简单的Java编程,编写程序输出“Hello World!”。

这个例子非常简单,但是对于初学者来说,它是一个优秀的起点。

2. 实验二-数组本实验是关于Java中数组的基本操作,包括数组的定义、初始化、访问和遍历等基本操作。

本实验对变量和循环结构有更深入的理解和比较好的编程能力。

3. 实验三-递归本实验主要介绍递归的概念和应用。

递归是一种非常重要的编程技术,它的应用在算法设计中具有广泛的应用。

4. 实验四-线程本实验介绍了Java中线程的相关知识,包括线程的概念、创建线程和线程同步等。

由于Java是一种多线程语言,线程技术是Java编程中重要的一个部分。

实验结果通过这些实验,我对Java语法有了更深入的理解,包括如何定义、使用变量、循环结构和递归等等。

我还学习了Java中线程的相关知识,如何创建线程、线程同步和线程的多态性等等。

通过这些实验,我深入了解了Java语言和算法设计的基本概念。

我已经掌握了Java的基本语法和算法,并在实现算法时编写了一些有效的代码。

我相信这些经验和技能将对我未来的学习和职业发展有所裨益。

总结本次实验是一个非常好的实践机会,让我在实践学习的过程中更好地理解Java编程的基本知识和技能,并用所学的知识解决了很多实际问题。

它加强了我的Java基础,提高了我的编程能力,为我今后的个人发展和职业发展打下了坚实的基础。

Java实验三实验报告1

Java实验三实验报告1

Java实验三实验报告1一、实验目的本次 Java 实验的主要目的是深入理解和掌握 Java 中的面向对象编程概念,通过实际的编程实践,提高对类、对象、继承、多态等特性的运用能力,同时培养良好的编程习惯和代码规范。

二、实验环境1、操作系统:Windows 102、开发工具:Eclipse IDE for Java Developers三、实验内容1、设计一个名为`Shape` 的抽象类,其中包含一个抽象方法`calculateArea()`用于计算图形的面积。

2、分别创建`Circle`(圆形)、`Rectangle`(矩形)和`Triangle`(三角形)类继承自`Shape` 类,并实现各自的`calculateArea()`方法来计算具体图形的面积。

3、创建一个测试类`TestShapes`,在其中创建不同图形的对象,并调用其计算面积的方法,输出结果。

四、实验步骤1、创建`Shape` 抽象类```javaabstract class Shape {abstract double calculateArea();}```2、创建`Circle` 类继承自`Shape` 类```javaclass Circle extends Shape {private double radius;public Circle(double radius) {thisradius = radius;}@Overridedouble calculateArea(){return MathPI radius radius;}}```3、创建`Rectangle` 类继承自`Shape` 类```javaclass Rectangle extends Shape {private double length;private double width;public Rectangle(double length, double width) {thislength = length;thiswidth = width;}@Overridedouble calculateArea(){return length width;}}```4、创建`Triangle` 类继承自`Shape` 类```javaclass Triangle extends Shape {private double base;private double height;public Triangle(double base, double height) {thisbase = base;thisheight = height;}@Overridedouble calculateArea(){return 05 base height;}}```5、创建测试类`TestShapes````javapublic class TestShapes {public static void main(String args) {Circle circle = new Circle(50);Rectangle rectangle = new Rectangle(40, 60);Triangle triangle = new Triangle(30, 80);Systemoutprintln("圆形的面积:"+ circlecalculateArea());Systemoutprintln("矩形的面积:"+ rectanglecalculateArea());Systemoutprintln("三角形的面积:"+trianglecalculateArea());}}```五、实验结果运行测试类`TestShapes` 后,输出结果如下:```圆形的面积:78539816矩形的面积:240三角形的面积:120```六、实验中遇到的问题及解决方法1、在编写抽象类和子类的代码时,一开始对于抽象方法的定义和实现理解不够清晰,导致代码出现错误。

java实验三报告模板

java实验三报告模板

本文档如对你有帮助,请帮忙下载支持!计算机科学与技术系实验报级 15 软工2班号06孙魏东同组人员 实验日期、实验目的与要求(简述本次实验要求达到的目的,涉及到的相关知识点,实验的具体要 求。

)目的:1. 掌握Java 类的结构、类的定义、方法和属性的定义以及对象的实现。

2. 掌握类及其成员修饰符的使用;掌握构造函数的使用;方法的参数传 递和返回值的用法。

3. 掌握类变量与实例变量,以及类方法与实例方法的区别。

要求: 1. 2. 3.4. 区别5. 应用程序中的其它类提供一些实用工具所用, 在Java 的类库中大量的静态方 法正是出于此目的而定义的。

)6. 程序应包括各个被调用方法的执行结果的显示。

7. 写出实验报告。

要求记录编译和执行Java 程序当中的系统错误信息提示,并给出解决办法。

(附运行界面、源代码) 。

专业名称 软件工程 课程名称面向对象程序设计项目名称实验三 类和对象 正确地定义类、方法和属性,要求属性均定义成私有的( Private )学会方法的参数传递和返回值的用法 熟练使用类及其成员修饰符类变量与实例变量,以及类方法与实例方法的使用(静态方法常常为二、实验内容(根据本次实验项目的具体任务和要求,完成相关内容,可包括:实验目的、原理、算法描述或流程图、源代码、实验运行步骤、关键技术分析、测试数据与实验结果、其他 )实验目的1:定义一个高校人员类School_Property,包含姓名、出生年月、性别、身份证号、手机号码,所在学校,入校时间,家庭地址等私有属性,以及访问属性的方法。

编写程序,创建一个高校人员类的对象,设置属性值,然后打印出该对象的各项属性信息。

原理:编写一个高校学生类School_Property,类里存放姓名name出生年月dateofbirth、性别sex、身份证号id、手机号码tel,所在学校school,入校时间entertime,家庭地址address 等私有属性,以及访问属性的方法getName(),getSex() 等。

Java实验报告(三)

Java实验报告(三)

Java实验报告(三)实验(三)类和对象⼀、实验⽬的和要求1.掌握类的构造函数的重载2.深⼊理解类和对象3.学习NetBeans中UML项⽬的创建类并⽣成相应代码的⽅法⼆、实验内容和原理设计⼀个复数类,能够完成复数之间的基本运算,重写⽅法toString(),使其能输出此复数(形式为:实部 + 虚部i)。

要求设计的复数类必须有三个构造函数,分别为⽆参数、1个参数和2个参数的构造函数,完成的基本运算包括两个复数的加、减、乘、除法和共轭复数。

三、实验环境1.硬件环境:2.软件环境:JDK1.5四、算法描述及实验步骤1.算法描述(可以⽤类图、流程图、伪代码或源程序描述)2.实验步骤●创建⼀个UML项⽬,并设计类Complex如下图●创建⼀个Java应⽤项⽬●把UML项⽬中的Complex⾃动⽣成代码到Java应⽤项⽬中●实现Complex类中的⽅法●进⾏编译●进⾏测试,使⽤的测试⽤例:输⼊:预期输出:…代码:Complex类:package studentTaskThree;/*** 复数类* @author Administrator**/public class Complex{/*** 定义类变量,复数的实部realPart和虚部ImaginaryPart */ private double realPart;private double imaginaryPart;/*** ⽆参构造⽅法*/public Complex(){super();* 不含实部复数的构造⽅法* @param realPart*/public Complex(double imaginaryPart){super();this.imaginaryPart = imaginaryPart;}/*** 含有实部参数和虚部参数的构造⽅法* @param realPart* @param imaginaryPart*/public Complex(double realPart, double imaginaryPart) { super();this.realPart = realPart;this.imaginaryPart = imaginaryPart;}/*** 读取实部* @return*/public double getRealPart(){return realPart;}/*** 设置实部* @param realPart*/public void setRealPart(double realPart){this.realPart = realPart;* 读取虚部* @return*/public double getImaginaryPart(){return imaginaryPart;}/*** 设置虚部* @param imaginaryPart*/public void setImaginaryPart(double imaginaryPart){this.imaginaryPart = imaginaryPart;}/*** 复数相加⽅法* @param complex* @return*/public Complex plus(Complex complex){return new Complex(this.realPart + complex.realPart, this.imaginaryPart + complex.imaginaryPart); }/*** 复数相减⽅法* @param complex* @return*/public Complex minus(Complex complex){return new Complex(this.realPart - complex.realPart, this.imaginaryPart - complex.imaginaryPart); }* @param complex* @return*/public Complex times(Complex complex){return new Complex(complex.realPart * this.realPart - complex.imaginaryPart * this.imaginaryPart,complex.realPart * this.imaginaryPart +complex.imaginaryPart * this.realPart);}/*** 复数相除⽅法* @param complex* @return*/public Complex divideBy(Complex complex){double dividedPart = (this.realPart * this.realPart +this.imaginaryPart * this.imaginaryPart);return new Complex((complex.realPart * this.imaginaryPart + complex.imaginaryPart * this.realPart) / dividedPart, (complex.imaginaryPart* this.realPart- complex.realPart * this.imaginaryPart) / dividedPart);}/*** 求共轭复数⽅法* @return*/public Complex conjugate(){return new Complex(this.getRealPart(),-this.getImaginaryPart());}/*** 重写toString⽅法,实现复数的输出格式*/String str = "";// 实部为零,虚部不为零if (this.realPart == 0 && this.imaginaryPart != 0){str += this.getImaginaryPart() + "i";}// 实部不为零,虚部为零else if (this.realPart != 0 && this.imaginaryPart == 0){str += this.getRealPart();}// 实部、虚部都不为零else if (this.realPart != 0 && this.imaginaryPart != 0){str += this.getRealPart() + (this.getImaginaryPart() > 0 ? "+": "") + this.getImaginaryPart() + "i"; }return str;}}测试类:Complexdemopackage studentTaskThree;/*** 测试类* @author Administrator**/public class ComplexDemo{/*** main⽅法,测试程序⼊⼝点* @param args*/public static void main(String[] args)* 创建两个完整复数对象*/Complex com1 = new Complex(1, 2);Complex com2 = new Complex(2, 1);// 创建⽆参复数Complex com3 = new Complex();// 创建只有虚部的复数Complex com4 = new Complex(5);// 输出对象System.out.println("复数1:" + com1);System.out.println("复数2:" + com2);System.out.println("复数3:" + com3);System.out.println("复数4:" + com4);// 输出相加结果System.out.println("复数相加:(" + com1 + ") + (" + com2 + ") = " + (com1.plus(com2)).toString()); // 输出相减结果System.out.println("复数相减:(" + com1 + ") - (" + com2 + ") = "+ (com1.minus(com2)).toString());// 输出相乘结果System.out.println("复数相乘:(" + com1 + ") * (" + com2 + ") = " + com1.times(com2));// 输出相除结果System.out.println("复数相除:(" + com1 + ") / (" + com2 + ") = " + com1.divideBy(com2));// 输出所求的共轭复数System.out.println("共轭复数: " + com1 + " 共轭复数是:" +com1.conjugate());}}实际测试类:import javax.swing.JOptionPane;/*** 实际测试类* @author Administrator**//*** 测试类⼊⼝点* @param args*/public static void main(String[] args){// 创建两个复数对象Complex com1 = new Complex();Complex com2 = new Complex();// 输⼊数据com1.setRealPart(Double.parseDouble(JOptionPane.showInputDialog("请输⼊复数1的实部:")));com1.setImaginaryPart(Double.parseDouble(JOptionPane.showInputDia log("请输⼊复数1的虚部:")));com2.setRealPart(Double.parseDouble(JOptionPane.showInputDialog("请输⼊复数2的实部:")));com2.setImaginaryPart(Double.parseDouble(JOptionPane.showInputDia log("请输⼊复数2的虚部:")));// 输出各个⽅法的测试结果JOptionPane.showMessageDialog(null, "复数应⽤测试如下:\n" +"复数1:" + com1 + "\n" +"复数2:" + com2 + "\n" +"复数相加:" + com1.plus(com2) + "\n" +"复数相加:" + com1.minus(com2) + "\n" +"复数相乘:" + com1.times(com2) + "\n" +"复数相除:" + com1.divideBy(com2) + "\n" +"共轭复数:" + com1 + " 共轭复数是:" +com1.conjugate());}}五、调试过程1.编译过程没有错误。

JAVA第三次实验完整版

JAVA第三次实验完整版

实验报告
院(系): 计算机科学学院
专业年级 : 电子信息科学与技术1403班姓名 : 卢丽琼
学号 : 21409030312
2016年 12 月 26 日
实验三JDBC编程
一、目的
通过Java数据库访问程序的编写、调试,使学生掌握JDBC编程的基本方法,熟悉常用的JDBC API,促进学生对概念的理解,培养动手能力。

二、基本要求
学生需要按时达到指定实验室上机。

调试教学中使用的程序示例,并加以修改,增加程序的功能;实现数据库访问的优化。

完成实验后,需要按时提交实验报告。

三、实验内容
1)复习数据库SQL语句的编写。

2)编写(JavaODBC-JDBC驱动)公共模块。

3)建立数据库应用模型,对数据库进行操作。

4)调试程序,实现数据库的访问。

四:实验步骤与结果
五:实验心得
通过本次试验,我了解了JDBC的基本概念并且深入了解了其注册方法,我明白了如何调用数据库,怎样建立数据库,以及数据库的基本架构,更深入的了解了JA V A.。

Java实验报告三

Java实验报告三

Java实验报告三Java实验报告班级计科⼆班学号 20188450 姓名李代传完成时间 2019.9.20评分等级实验三 String类的应⽤1. 实验⽬的1. 掌握类String类的使⽤;2. 学会使⽤JDK帮助⽂档;2. 实验内容1.已知字符串:"this is a test of java".按要求执⾏以下操作:(要求源代码、结果截图。

)3. 统计该字符串中字母s出现的次数。

4. 统计该字符串中⼦串"is"出现的次数。

5. 统计该字符串中单词"is"出现的次数。

6. 实现该字符串的倒序输出。

2.请编写⼀个程序,使⽤下述算法加密或解密⽤户输⼊的英⽂字串。

要求源代码、结果截图。

3.已知字符串"ddejidsEFALDFfnef2357 3ed"。

输出字符串⾥的⼤写字母数,⼩写英⽂字母数,⾮英⽂字母数。

1. 实验过程1. 实验代码1. 算法详解:很简单,就是使⽤字符串的indexOf()⽅法找到被查找的字符串中的第⼀个需要查找的字符串,然后从这个索引的后⼀个位置继续查找。

因为查找都是⽤的⼀种算法,只需要改变⼩部分参数就⾏了,所以我把它单独写成了⼀个⽅法。

StringBuffer中有能倒序输出的⽅法,所以把字符串当做参数new了⼀个StringBuffer就很简单。

1.实验结果2.实验代码算法详解:把输⼊的字符串⽤toCharArray()⽅法拆分成字符数组,然后⼀个字符⼀个字符的进⾏操作。

⽤x来记录是解密或者是加密,这样就能在后⾯决定是+3或者是-3,能通过这⼀个变量来节省很多重复语句。

算法详解:下⾯这个就是加密算法,⽤了String类的substring⽅法,作⽤是得到指定位置的字符串。

因为是向后移动三位,所以就直接把最后三个字符取出来放到最前⾯就好了。

但是原来的字符串没有变,所以要把最后三个字符去掉,⽤了StringBuffer类中的replace⽅法,作⽤是替换掉指定位置的字符串,我把替换为了空字符串,就相当于删除了。

JAVA实验报告

JAVA实验报告

第三次Java实验报告实训1》:1.实训目的:(1).了解Java中数组的定义。

(2).掌握不同类型数组的声明方法及其应用。

(3).掌握一维和二维数组的创建及其使用方法。

2.实训内容:编写一个Java程序,用随机生成一维字符数组,然后先按正序再按反序输出它们。

3.实训步骤:1》.在包“su”中创建可视类“sujian”.2》.添加组件:Lable和Button更改其属性和Text。

3》.添加事件响应代码:对“确定”选择Events- widgetSelected并将代码改为:char[] s=new char[15];for(int i=0;i<s.length;i++){int k=(int)(Math.random()*26+97);s[i]=(char)k;}String str="随机字符";String str1="反向输出";for(int i=0;i<s.length;i++){str=str+Character.toString(s[i]);str1=str1+Character.toString(s[s.length-i-1]);}label.setText(str);label1.setText(str1);运行结果为:实训2》.1.实训内容:编写一个Java程序,用二维数组实现奇数阶的魔方矩阵:规律为:1.数1放在第一行的正中一列,2.从2起{每个数所在的行数比前一数的行数减1,列数加1。

如果行数超过下界(上界)则改为上界(下界),3.如果数为n 的倍数,则其后的数所在位置列数不变,行数加1}2.实训步骤:(1).在包中创建一个sujian1可视类(2).添加组件:Lable和Button更改其属性和Text。

(3).添加事件响应代码:对“确定”选择Events- widgetSelected 并将代码改为:MessageBox box=new MessageBox(sShell,SWT.ICON_WARNING|SWT.OK);int n=Integer.parseInt(text.getText()==""?"-1":text.getText());if(n>9||n<1||n%2==0){box.setMessage("输入一个不超过9的正奇数:");}else{box.setText(n+"阶魔方阵");String[][] f=new String[n+1][n+1];String str="";int i=1,j=(n+1)/2;f[i-1][j-1]="1";for(int k=2;k<=n*n;k++){if((k-1)%n==0){i++;}else{i=(i==1)?n:i-1;j=(j==n)?1:j+1;}if(k<10){f[i-1][j-1]=""+Integer.toString(k);}else f[i-1][j-1]=Integer.toString(k);}for(i=0;i<n;i++){for(j=0;j<n;j++){str=str+f[i][j]+" ";}str=str+"\n";}box.setMessage(str);}box.open();text.selectAll();text.setFocus();运行结果为:。

java第三次实验报告

java第三次实验报告

java实验报告实验题目实现可深度复制的栈学生姓名指导教师学院专业班级完成时间目录一、实验目的 (3)二、实验开发环境和工具 (3)三、问题描述: (3)四.设计简要描述 (3)五.程序清单 (4)六.调试结果分析: (4)七.心得体会: (8)一、实验目的1.了解和掌握ArrayList的基本用法2. 了解和掌握用ArrayList实现一些基本的数据结构二、实验开发环境和工具可以在Linux或者Windows操作系统上搭建开发环境,可使用集成开发环境Eclipse,使用Java语言,工具包使用JDK1.8。

三、问题描述:基于ArrayList实现可以深度复制(Deep Copy)的栈结构。

1.首先用ArrayList实现栈结构2. 接着将第1步实现的栈通过Clonable接口实现深度复制四.设计简要描述1.数据结构设计栈的操作将在Mystacks类中全部实现,其中Mystacks类中定义私有的ArrayList 数据list,以便在函数中的使用。

2.函数设计总体来说,栈中函数的实现都是通过ArrayList类中的方法实现的,也即通过list 对象来调用ArrayList的方法。

其中需要中已的是,弹出栈顶元素的函数在弹出后,要返回该弹出元素的内容;另一个则是栈的输出函数是重置了toString()函数,具体实现代码为:3.深度复制实现用cloneable接口将深度复制实现。

这一接口的使用就是令原class继承cloneable接口,这样Mystacks类的对象就能通过调用object类的clone()方法实现复制。

Cloneable是一个标记(marker)接口: 空接口。

标记接口不包含常量和方法. 用来表示一个类具有某种属性.实现了Cloneable接口的类被标记为可复制的。

接口原型为:ng;public interface Cloneable {}五.程序清单packagemystacks;importjava.util.ArrayList;public class Mystacks implements Cloneable {privateArrayList<Integer> list;publicMystacks() {list= new ArrayList<Integer>();}publicbooleanisEmpty() {returnlist.isEmpty();}publicintgetSize() {returnlist.size();}publicint peek() {return (int) list.get(getSize() - 1);}publicint pop() {int o = (int)list.get(getSize() - 1);list.remove(getSize() - 1);return o;}public void push(int o) {list.add(o);}public String toString() {return list.toString();}public static void main(String[] args){Mystacks list;list=new Mystacks();list.push(123);list.push(234);list.push(345);list.push(456);list.push(678);System.out.println("现在栈中的元素是:"+list.toString());System.out.println("判断栈是否为空,空返回true:"+list.isEmpty());System.out.println("栈中元素的个数为:"+list.getSize());System.out.println("返回栈顶元素:"+list.peek());System.out.println("弹出栈顶元素并输出:"+list.pop());System.out.println("现在栈中的元素是:"+list.toString());Mystackslistcopy;listcopy =new Mystacks();try {listcopy=(Mystacks)list.clone();//注意此处要进行强制转换,因为clone()是object的方法,不能自动转换为Mystacks} catch (CloneNotSupportedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println("复制后的listcopy内容为:"+listcopy.toString());}}六.调试结果分析:1.栈的建立栈的建立过程还算顺利,未存数据实战的输出为:2.存入数据构建栈成功后,接下来,就是要让数据存入栈中。

Java课程第三次实验报告

Java课程第三次实验报告

Java课程第三次实验报告实验报告(2014 / 2015学年第2学期)????课程名称实验名称实验时间20JA V A语言程序设计Java对象和类的使用年 5 月11 日指导单位计算机学院/软件学院软件工程系指导教师学生姓名学院(系)班级学号专业实验名称Java对象和类的使用实验类型上机实验学时一、实验目的1.掌握类的基本概念,会编写简单的类 2.掌握继承类的编写方法二、实验环境(实验设备) 1. 每位学生配备计算机一台2. 计算机需安装好JDK和JCreator 2 指导教师实验时间三、实验内容1. 学生类的创建和使用①创建一个学Student类,成员变量包括:学号、班号、姓名、性别、年龄等,且都是private类型。

②声明一个构造方法,初始化所有成员变量。

③分别声明获得各属性的public类型的成员方法,方法名要求以get开头。

④分别声明修改各属性的public类型的成员方法,方法名要求以set开头。

⑤声明一个public类型的toString()方法,把该类中的所有域信息组合成一个字符串。

在主类中:创建2个Student 对象,输出对象的所有域信息;修改对象的姓名和年龄,输出修改后的姓名和年龄;比较两个Student对象的年龄的大小,输出年龄较大的Student对象。

student类的代码:public class student1{ private String name; private String xingbie; private int xuehao; private int banhao; private int age; public student1(){ setStudent(0,0,0,\无名氏\未出生\全部信息,构造方法} public String getname(){ return name;} public String getxingbie(){ return xingbie;} public int getxuehao(){ return xuehao;} public int getbanhao(){ return banhao;} public int getage(){ return age;} public void setStudent(int x,int b,int a,String N,String X){ xuehao=((x>0)?x:0); banhao=((b>0)?b:0); 1 age=((a>0)?a:0); name=N; xingbie=X; } public String toString(){ return \姓名:\性别:\年龄:\班号\学号\ } public String tostring(){ return \姓名:\年龄:\ } } StudentTest类的代码:import javax.swing.JOptionPane; public class student1Test{ public static void main(String args){ collegestudent Collegestudent=new collegestudent(14110105,1411011,21,\折原临也\男\情报收集\ String output=\学生的信息:\ JOptionPane.showMessageDialog(null,output,\学生\ System.exit(0); }} 3.定义一个矩形类,计算其面积,定义派生类计算正方形面积。

Java第三次实验

Java第三次实验

实验4:修饰符与继承性一、实验目的了解如何使用类及其成员的修饰符,理解类的继承性,掌握方法的继承、重载和覆盖。

二、实验要求1.编写如何使用类及其成员的修饰符的程序。

2.编写如何通过传递参数来调用方法的程序。

3.编写体现类的继承性(成员变量、成员方法的继承)的程序。

三、实验内容(一)使用修饰符有时需要公开一些变量和方法,有时需要禁止其他对象使用变量和方法,这时可以使用修饰符来实现这个目的。

常用的修饰符有:public,private,protected,package,static,final,abstract等。

1.程序功能:通过两个类StaticDemo、KY4_1 来说明类变量与对象变量,以及类方法与对象方法的区别。

2.编写源程序KY4_1.java,程序源代码如下。

class StaticDemo {static int x;int y;public static int getX() {return x;}public static void setX(int newX) {x = newX;}public int getY() {return y;}public void setY(int newY) {y = newY;}}public class KY4_1 {public static void main(String[] args) {System.out.println("类变量x="+StaticDemo.getX());System.out.println("对象变量y="+StaticDemo.getY());StaticDemo a= new StaticDemo();StaticDemo b= new StaticDemo();a.setX(1);a.setY(2);b.setX(3);b.setY(4);System.out.println("类变量a.x="+a.getX());System.out.println("对象变量a.y="+a.getY());System.out.println("类变量b.x="+b.getX());System.out.println("对象变量b.y="+b.getY());}}3.编译并运行程序KY4_1.java,看看该程序是否有错?如果有错请在实验报告中指出出错的地方,出错的原因,并给出修改意见以及程序正确运行的结果。

【精品文档】3实验报告Java (6000字)-范文模板 (5页)

【精品文档】3实验报告Java (6000字)-范文模板 (5页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==3实验报告Java (6000字)福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:计算机科学与技术年级: 201X 实验课程:JAVA语言程序设计姓名:学号:实验室号: 1#608计算机号: C1 实验时间: 201X0614 指导教师签字:成绩:实验3一、实验目的1. 掌握声明二维数组变量,创建二维数组对象,使用二维数组解决实际问题。

2. 使用构造方法创建对象,通过对象引用变量访问对象,。

3. 封装数据域以便于类的维护。

二、实验要求1. (7.6)编写两个矩阵相乘的方法。

方法头如下:public static double[][] multiplyMatrix(double[][] a, double[][] b)为了是矩阵a能够和矩阵b相乘,矩阵a的列数必须与矩阵b的行数相同。

假设矩阵c是相乘的结果,而a的列数是n,那么每个元素cij=ai1 * b1j + ai2 * b2j + …+ ain * bnj。

编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示他们的2. (8.1)创建一个名为Rectangle的类表示矩形,这个类包括:? 两个名为width和height的double型数据域,它们分别表示矩形的宽和高。

width和height的默认值都为1。

? 创建默认矩形的无参构造方法:Rectangle()。

? 一个创建width和height为指定值的矩形的构造方法:Rectangle(double width, double height)。

? 一个名为getWidth()的方法返回宽。

? 一个名为getHeight()的方法返回高。

? 一个名为getArea()的方法返回这个矩形的面积。

? 一个名为getPerimeter()的方法返回周长。

14401033黄继文Java实验报告3

14401033黄继文Java实验报告3

学号:14401033 姓名: 黄继文 班级: 实验班 实验时间: 10.9 实验编号 Java 0003 实验名称 Java 语句与控制语句(一)实验目的和要求 掌握Java 的语句与控制结构,包括基本数据类型、运算符和控制结构。

实验内容 将实验报告的文档名前加上班号学号姓名完成以下的操作任务。

基础题一、实验题目题目1:编写程序实现课本P35页作业题的第1题完成从键盘输入一个x 的值,程序输出y 的值。

将程序源代码保存在下方:import java.util.Scanner;public class HomeWork {public static void main(String args []){Scanner sc = new Scanner(System.in );System.out .println("请输入一个x 值:");int x = sc .nextInt();show (x );sc .close();}private static void show(int x ) {int y = 0;if (x < 0){y = -1 + 2*x ;}else if (x > 0){y = -1 + 3*x ;}else {y = -1;}System.out .println("y 的值为:"+y );}}Java 程序设计 实验(训)报告将运行结果截图在下方:题目2:编写程序实现课本P35页作业题的第2题将程序源代码保存在下方:public class HomeWork {public static void main(String args[]){ int sum = 0;int count = 1;while(count<=1000){if((count%3 == 0) && (count%7 ==0)){sum = count + sum;}count++;}System.out.println("sum:"+sum);}}将运行结果截图在下方:题目3:运行课本P34页第8题,并理解循环结构和选择结构的用法。

Java实验三实验报告

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的两个对象并计算两个点坐标的距离。

4. 定义一个抽象类Area、两个Area的子类RectArea和RoundArea,以及一个实现类ImpleArea。

要求如下(1)抽象类Area类中只包含一个抽象方法double area()。

java实验报告(实验三)

java实验报告(实验三)
int dayOne=read.nextInt( );
System.out.println("输入第二个日期的年份:");
int yearTwo=read.nextInt( );
System.out.println("输入该年的月份:");
int monthTwo=read.nextInt( );
System.out.println("输入该月份的日期:");
Date date1=【代码6】//用timeOne做参数构造date1
Date date2=【代码7】//用timeTwo做参数构造date2
if(date2.equals(date1))
{
System.out.println("两个日期的年、月、日完全相同");
}
else if(date2.after(date1))
北京林业大学
2013学年—2014学年第2学期Java程序设计基础实验报告书
专 业:电子班 级:11-2
姓 名:王云飞学 号:
实验地点:计算机中心任课教师:黄儒乐
实验题目:自定义异常与异常处理,常用类使用
实验环境:Windows2000/XP;局域网
实验要求:
1.对所有实验内容中涉及到的命令均要亲自实践,对照实验指导书进行。
System.out.println("输入该年的月份:");
int monthTwo=read.nextInt( );
System.out.println("输入该月份的日期:");
int dayTwo=read.nextInt( );
Calendar calendar=【代码1】//初始化日历对象。

JAVA实验报告实验3答案

JAVA实验报告实验3答案

实验三熟悉常用java工具包并运用编程实验目的:本实验旨在巩固同学们对上课所讲java.util工具包中collection,list,set,map加深理解,对其用法编程有一个更加深入的理解,为同学们以后的能够用java进行独立地编写桌面程序打下一定的基础。

实验内容:本实验的内容为:用collection,list,set,map来存储数据,并进行排序,任何用iterator,listiterator或者enumeration来打印其结果(按顺序和降序排列打印)。

共分为四部分部分(前三部分必做,如果选第四个,前三个可以不做。

):(1)按顺序把1,10,5,7,6,2,9,20,14,存入到list中(注:允许自己自定义任何数),并对其进行排序,打印其升序和降序排列的结果。

然后再向list中位置为第四位插入数 35看看会有啥结果?再向list中插入字符串“ddy”,试猜想排序是否会出错?然后看看运行结果是啥?程序:import java.util.*;public class sy3{public sy3(){list list=new arraylist();list.add(1);list.add(10);list.add(5);list.add(7);list.add(6);list.add(2);list.add(9);list.add(20);list.add(14);list.add(35);list.add(ddy);system.out.println(原序列:);for(int i=0;i&lt;=list.size()-1;i++){system.out.println(list.get(i));}system.out.println(新序列);for(int i=0;i&lt;=list.size()-1;i++){collections.sort(list);collections.reverse(list);system.out.println(list.get(i));}}public static void main(string[] args){new sy3();}}结果如图(2)按顺序把下面一组数([1,2] [3,4] [2,2] [6,4] [5,2] [4,4])存放到map中(注:允许自己自定义任何数),并按key 和value的值进行排序。

JAVA实验报告三

JAVA实验报告三

JA V A实验报告姓名:学号:班级:一、实验目的(1)掌握GUI中容器、一般组件的使用方法。

(2)掌握GUI中布局管理器的使用方法。

(3)掌握简单事件的处理方式。

二、实验内容编写程序实现如下功能:(1)实现类似于上图的界面。

(2)给按钮“保存”增加事件,点击保存能够将填入的信息写入文本文件中。

(3)给按钮“导入”增加事件,点击导入能够从文本文件中读入第一条数据。

(4)添加新按钮“保存1”,给按钮“保存1”增加新的事件,点击保存,能够将界面中输入的信息保存到数据库中,数据库不限,如Access,SQL Server,Oracle等。

(5)添加新按钮“导入1”,给按钮“导入1”增加新的事件,点击导入,能够将从数据库中读取第一条数据,写入到界面中。

三、实验步骤import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class EmpManageSys implements ActionListener {Connection con;Statement stmt;String sql;ResultSet rs;StringBuffer sb = new StringBuffer();JTextField jtf2 = new JTextField("张飞",10);JTextField jtf3 = new JTextField(10);JTextField jtf4 = new JTextField(10);JTextField jtf7 = new JTextField(10);JTextField jtf5 = new JTextField(10);JTextField jtf6 = new JTextField(10);JTextField jtf8 = new JTextField(10);JTextField jtf9 = new JTextField(10);JTextArea jta10 = new JTextArea(50, 40);public void actionPerformed(ActionEvent e) {String str = e.getActionCommand();if ("查询".equals(str)) {//if check the button of 查询,then go to method of searchEmp() searchEmp();} else if ("增加".equals(str)) {//if check the button of 增加,then go to method of addEmp() addEmp();} else if ("修改".equals(str)) {//if check the button of 修改,then go to method of alterEmp() alterEmp();} else if ("撤除".equals(str)) {//if check the button of 撤除,then go to method of deleteEmp() deleteEmp();}}//this is the constructor.EmpManageSys() {createGUI();connectToDataBase();// searchEmp();// addEmp();// deleteEmp();alterEmp();}//connect to the database by using the method getConnection from the class of JdbcUtil.//You can find the class of JdbcUtil at the button of this page.public Connection connectToDataBase() {con = JdbcUtil.getConnection();System.out.println(con);return con;}public void searchEmp() {jta10.setText("");try {stmt = con.createStatement();// sql = "select * from Mstar where id=" + jtf3.getText();// sql1="select * from sd100343 where ="+jtf3.getText();sql = "select * from Mstar where chineseName="+ jtf2.getText().toLowerCase().trim() + "or id="+ jtf3.getText().toLowerCase().trim() + "or engName="+ jtf4.getText().toLowerCase().trim() + "or UNIT="+ jtf5.getText().toLowerCase().trim() + "or TEAM="+ jtf6.getText().toLowerCase().trim() + "or Phone="+ jtf7.getText().toLowerCase().trim() + "or region="+ jtf8.getText().toLowerCase().trim() + "or busStation="+ jtf9.getText().toLowerCase().trim();stmt.executeQuery(sql);rs = stmt.getResultSet();ResultSetMetaData meta = rs.getMetaData();int cols = meta.getColumnCount();while (rs.next()) {for (int i = 1; i <= cols; i++) {sb.append(" " + meta.getColumnName(i) + " =");sb.append(rs.getString(i));}sb.append("\n");jta10.setText(sb.toString());}} catch (SQLException e11) {e11.printStackTrace();}}public void addEmp() {try {stmt = con.createStatement();sql = "update Mstar values(" + jtf2.getText() + jtf3.getText() + jtf4.getText() + jtf5.getText() + jtf6.getText()+ jtf7.getText() + jtf8.getText() + jtf9.getText() + ")";int i = stmt.getUpdateCount();if ((jtf2.getText() != null) && (jtf4.getText() != null)&& (jtf6.getText() != null) && (jtf7.getText() != null)) { stmt.executeUpdate(sql);jta10.setText("添加记录成功" + i + "条");} else {jta10.setText("带*号项为添加记录时不能为空");}} catch (SQLException e1) {e1.printStackTrace();}}public void deleteEmp() {searchEmp();try {stmt = con.createStatement();sql = "delete from Mstar where chineseName="+ jtf2.getText().toLowerCase().trim() + "or id="+ jtf3.getText().toLowerCase().trim() + "or engName="+ jtf4.getText().toLowerCase().trim() + "or UNIT="+ jtf5.getText().toLowerCase().trim() + "or TEAM="+ jtf6.getText().toLowerCase().trim() + "or Phone="+ jtf7.getText().toLowerCase().trim() + "or region="+ jtf8.getText().toLowerCase().trim() + "or busStation="+ jtf9.getText().toLowerCase().trim();stmt.executeUpdate(sql);int i = stmt.getUpdateCount();jta10.setText("撤除操作成功" + i + "条");} catch (SQLException e) {e.printStackTrace();}}public void alterEmp() {searchEmp();sql = "update Mstar set chineseName="+ jtf2.getText().toLowerCase().trim() + "and id="+ jtf3.getText().toLowerCase().trim() + "and engName="+ jtf4.getText().toLowerCase().trim() + "and UNIT="+ jtf5.getText().toLowerCase().trim() + "and TEAM="+ jtf6.getText().toLowerCase().trim() + "and Phone="+ jtf7.getText().toLowerCase().trim() + "and region="+ jtf8.getText().toLowerCase().trim() + "and busStation=" + jtf9.getText().toLowerCase().trim();int i = 0;try {stmt.executeUpdate(sql);i = stmt.getUpdateCount();} catch (SQLException e) {e.printStackTrace();}jta10.setText("修改操作成功" + i + "条");}public void createGUI() {JFrame jf = new JFrame("员工信息管理系统");jf.setLayout(new GridLayout(2, 1));// jf.setLayout(new GridLayout(10,2));JPanel jp00 = new JPanel(new GridLayout(5, 4));JPanel jp1 = new JPanel();JButton jb11 = new JButton("查询");jb11.addActionListener(this);JButton jb12 = new JButton("增加");jb12.addActionListener(this);jp1.add(jb11);jp00.add(jp1);JPanel jp11 = new JPanel();JButton jb111 = new JButton("修改");jb111.addActionListener(this);JButton jb112 = new JButton("撤除");jb112.addActionListener(this);jp11.add(jb111);jp11.add(jb112);jp00.add(jp11);JPanel jp2 = new JPanel();JLabel jl2 = new JLabel("中文名 * "); jp2.add(jl2);jp2.add(jtf2);jp00.add(jp2);JPanel jp3 = new JPanel();JLabel jl3 = new JLabel("工号 ");jp3.add(jl3);jp3.add(jtf3);jp00.add(jp3);JPanel jp4 = new JPanel();JLabel jl4 = new JLabel("EngName*");jp4.add(jl4);jp4.add(jtf4);jp00.add(jp4);JPanel jp5 = new JPanel();JLabel jl5 = new JLabel("UNIT ");jp5.add(jl5);jp5.add(jtf5);jp00.add(jp5);JPanel jp6 = new JPanel();JLabel jl6 = new JLabel("TEAM* ");jp6.add(jl6);jp6.add(jtf6);jp00.add(jp6);JPanel jp7 = new JPanel();JLabel jl7 = new JLabel("Phone* ");jp7.add(jl7);jp7.add(jtf7);jp00.add(jp7);JPanel jp8 = new JPanel();JLabel jl8 = new JLabel("区域 ");jp8.add(jl8);jp8.add(jtf8);JPanel jp9 = new JPanel();JLabel jl9 = new JLabel("公交站 ");jp9.add(jl9);jp9.add(jtf9);jp00.add(jp9);jf.add(jp00);JPanel jp01 = new JPanel();jta10.setText("--用户使用手册-- \n1、查询:选择一个字段,如 EngName 在文本框中输入相应内容,点击查询\n2、增加:在各个文本框中输入相应内容后,点击增加。

Java综合实验报告_3

Java综合实验报告_3

面向对象程序设计综合性实验(一)系统分析:本系统为学生考试成绩分析系统,系统要求可以让用户输入若干学生的基本信息、课程信息,还有对应的课程成绩。

而主要功能则是可以实现按条件进行相应学生的成绩查询和按条件进行成绩的分析,并且能够通过绘制柱状图与圆饼图来显示相应结果。

因此,我设计了3个保存数据的类,分别是年级班级类、学生类以及课程类,其中学生类继承了课程类,而年级班级类则继承学生类。

每当新建一条信息(一个学生的信息),则新建一个年级班级类,在内部会自动新建一个学生类以及课程类,用于记录一个学生的信息。

本系统采用了窗口GUI来实现,因此大量采用了按钮、文本框、单选按钮、滚动窗口等等,所以必不可少的当然是不少的监听器与对应的实现方法。

(二)系统设计:1.基本数据:Class—Grade : String—major : String—classname : String—Student : Student+getGrade() : String+getStudent() : Student+getClassname() : String+getMajor() : String+setGrade(Grade : String) : void+setClassname(classname : String) : void +setMajor(major : String) : voidStudent—StudentID : String—StudentName : String—Course : Course—couseMark : double+getCourse() : Course+getCouseMark () : double+getStudentID () : String+getStudentName () : String+setCouseMark (couseMark : double) : void+setStudentID (StudentID : String) : void+setStudentName (StudentName : String) : voidCourse—coureNumber : String—courseName : String—coureScore : double—courseHour : double+getCoureNumber () : String+getCoureScore () : double+getCourseHour () : double+getCourseName () : String+setCoureNumber (coureNumber : String) : void +setCoureScore (coureScore: double) : void+setCourseHour (courseHour: double) : void+setCourseName(courseName : String) : voidjava.io.Serializable2.主要方法实现及其他类(总共有20个,简单罗列5个):(三)系统实现:1.显示全部信息:利用窗口进行显示,而该窗口由菜单栏、滚动窗口、单选按钮和复选按钮组成。

java大学实验报告含答案

java大学实验报告含答案

《Java编程》实验教学大纲实验学时:32 实验个数:6实验学分:1课程性质:专业限选课适用专业:软件工程教材及参考书:1.《Java语言程序设计》,郑莉等主编,北京:清华大学出版社,20062.《面向对象程序设计与Java语言》,周晓聪等著,北京:机械工业出版社,2004大纲执笔人:朱贵琼大纲审定人:李晓宁一、实验课的性质与任务Java语言是新兴起的面向对象程序设计语言,用于应用程序设计,尤其是应用在网络、因特网和移动设备上。

为培养学生网络应用程序的编程能力,在学生具有一定的计算机和网络知识的基础上开设Java程序设计课程,使学生能够运用Java语言作为完成应用程序设计的基本工具。

本课程将从面向对象的基本概念入手,结合课程设计,较为系统地介绍Java语言的主要特征和编程方法,包括:类型与转换、类的声明与对象产生、继承与多态性、包与接口、数组与字符串、多线程编程以及异常处理、JDBC等内容。

通过相关的实验设计,使学生具有一定的网络编程能力。

二、实验课程目的与要求1.实验目的:开设该课程设计,目的是让学生在掌握了Java程序设计的基本知识、基本理论方面后,能熟悉Java编程的思想和编程技巧,培养学生分析问题和解决问题的能力及技巧。

实验设计覆盖Java程序设计中主要的方法。

该课程以讲授、演示和实验法相结合。

按照重视基础,突出重点的原则进行。

通过程序设计培养学生的程序设计能力、解决和分析问题的能力,使学生对所学的内容有更深入的理解,逐步掌握Java编程方面的技巧。

2.实验要求:(1)实验安排在上机时间进行,如在上机时间不能完成可课后完成,到期交经过编译并能正常运行的软件。

(2)实验以前,学生应对实验设计的相关知识点和相关设计技术有所了解。

(3)每个实验都要求写出实验报告(实验报告包括:实验内容、目的、实现方法、调试结果)。

三、实验项目及内容提要四、实验内容安排:实验一 Java基础知识实验(验证型实验 4学时)1.目的要求:(1)熟悉Jbuilder的开发环境,学会Jbuilder基础的操作和调试。

Java实三报告

Java实三报告

浙江万里学院实验报告课程名称: 面向对象程序设计实验名称: 数据库的连接:JDBC* 专业班级: 电子商务112班 姓名: 陈依丽 学号: 2011014732 实验日期: 2013.12 实验3 数据库的连接:JDBC*一、实验目的了解JDBC 核心API ,利用JDBC 核心API ,建立数据库连接、执行SQL 语句、取得查询集、数据类型支持等功能。

二、实验要求了解JDBC 的概念和工作原理。

掌握使用JDBC 实现简单的数据库管理。

三、实验内容(一)配置ODBC 数据源1. 从开始菜单中,选择设置|控制面板。

2. 在控制面板中选择"32位 ODBC"。

3. 打开"32位 ODBC"后,看到的应该是一个卡片式对话框,上面一排有多个卡片标签,其中包括"用户DSN"、"系统DSN"、"文件DSN"等等。

选择"系统DSN"。

4. 单击"系统DSN"中的"添加…"按钮,弹出一个对话框。

5. 在对话框中,列出了当前系统支持的ODBC 数据源的驱动程序,选择"Microsoft Access Driver",单击"完成"按钮,弹出一个对话框。

6. 在对话框中,向"数据源"文本框内输入数据源的名字,这个名字可以任取,在这个例子中,我们输入的名字是"vfox"。

然后,单击"创建"按钮。

7. 在对话框中,选择数据库存放的目录,然后向"数据库名"文本框内输入数据库的名字,这个名字可以任取,在这个例子中,我们输入的名字是"vfox"。

然后,8. 单击"确定"按钮,会弹出显示"数据库创建成功"的对话框。

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

实验报告
( 2014 / 2015学年第2学期)
课程名称JAVA语言程序设计
实验名称Java对象和类的使用
实验时间20 年 5 月11 日指导单位计算机学院/软件学院
软件工程系
指导教师
学生姓名班级学号
学院(系) 专业
以下仅供不会的同学参考,切记不要打印。

(1) //Student.java
package student; public class Student{ private String sNo; private String cNo; private String name; private String sex; private int age; private static int count=0;
public Student(String sno,String cno,String n,String s,int a){ sNo=sno; cNo=cno; name=n; sex=s; age=a; count++; }
public void setSNo(String sno){ sNo=sno; } public void setCNo(String cno){ cNo=cno; } public void setName(String n){ name=n; } public void setSex(String s){ sex=s; } public void setAge(int a){ age=a; }
public String getSNo(){ return sNo; } public String getCNo(){ return cNo; } public String getName(){ return name; } public String getSex(){ return sex; } public int getAge(){ return age; }
public String toString(){ return "该学生信息:学号="+sNo+" 班号="+cNo+" 姓名="+name+" 性别="+sex+" 年龄="+age; }
public static int getCount(){ return count; }
}
//StudentTest.java
import student.Student; public class StudentTest{ public static void main(String args[]){ Student stu1=new Student("13010101","130101","张三","男",18); Student stu2=new Student("13010102","130101","李四","女",19); System.out.println(stu1.toString()); System.out.println(stu2.toString());
stu1.setName("张3"); stu1.setAge(20); System.out.println(stu1.getName()+" "+stu1.getAge()); stu2.setName("李4"); stu2.setAge(18); System.out.println(stu2.getName()+" "+stu2.getAge());
System.out.println("下面输出年龄较大的学生信息"); if(stu1.getAge()>stu2.getAge()) System.out.println(stu1.toString()); else System.out.println(stu2.toString());}}
(2)实验书P185
(3)实验书P24。

相关文档
最新文档