java 实验三BX120209王程强
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第三次实验完整版
实验报告
院(系): 计算机科学学院
专业年级 : 电子信息科学与技术1403班姓名 : 卢丽琼
学号 : 21409030312
2016年 12 月 26 日
实验三JDBC编程
一、目的
通过Java数据库访问程序的编写、调试,使学生掌握JDBC编程的基本方法,熟悉常用的JDBC API,促进学生对概念的理解,培养动手能力。
二、基本要求
学生需要按时达到指定实验室上机。
调试教学中使用的程序示例,并加以修改,增加程序的功能;实现数据库访问的优化。
完成实验后,需要按时提交实验报告。
三、实验内容
1)复习数据库SQL语句的编写。
2)编写(JavaODBC-JDBC驱动)公共模块。
3)建立数据库应用模型,对数据库进行操作。
4)调试程序,实现数据库的访问。
四:实验步骤与结果
五:实验心得
通过本次试验,我了解了JDBC的基本概念并且深入了解了其注册方法,我明白了如何调用数据库,怎样建立数据库,以及数据库的基本架构,更深入的了解了JA V A.。
【2018-2019】java实验报告实验3答案-范文模板 (9页)
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==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<=list.size()-1;i++){System.out.println(list.get(i));}System.out.println("新序列");for(int i=0;i<=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 实验报告Java 实验报告引言:Java 是一种广泛应用于软件开发的计算机编程语言,具有跨平台、面向对象、简单易学等特点。
本实验报告将介绍我在学习 Java 过程中进行的一系列实验,包括实验目的、实验过程、实验结果和实验总结。
实验一:Hello World 程序实验目的:通过编写一个简单的 Hello World 程序,熟悉 Java 的开发环境和基本语法。
实验过程:1. 安装 Java Development Kit(JDK)并配置环境变量。
2. 使用文本编辑器编写以下代码:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```3. 将代码保存为 HelloWorld.java。
4. 打开命令提示符,切换到代码所在目录,输入以下命令编译代码:```javac HelloWorld.java```5. 输入以下命令运行程序:```java HelloWorld```实验结果:命令提示符中输出 "Hello, World!"。
实验二:数据类型和运算符实验目的:了解 Java 的数据类型和运算符,并能够正确使用它们进行计算。
实验过程:1. 声明并初始化不同类型的变量,例如整数、浮点数和布尔类型。
2. 使用算术运算符进行基本的数值计算。
3. 使用逻辑运算符进行布尔类型的操作。
实验结果:根据实验过程中的代码和输入,得到相应的计算结果。
实验三:条件语句和循环结构实验目的:掌握 Java 中的条件语句和循环结构,能够根据不同的条件执行相应的代码块。
实验过程:1. 使用 if-else 语句实现条件判断。
2. 使用 switch-case 语句实现多分支选择。
3. 使用 for 循环、while 循环和 do-while 循环实现不同的循环结构。
《Java程序设计》实验报告 --实验3
else if(e.getSource()==buttontwo){//按键2操作
tf.setText(tf.getText()+"2");
flag1=Double.parseDouble(tf.getText());
}
else if(e.getSource()==buttonthree){//按键3操作
buttondevision=new JButton("/");
buttonsin=new JButton("sin");
buttontozero=new JButton(">0");
paneleast.setLayout(new GridLayout(3,1));//设置西边的布局为3行1列
//将操作按钮"+""-""*""/""sin"">0"添加到西边的面板中
JButton buttonplus,buttonminus,buttonmultiple,buttondevision,
buttonsin,buttontozero;//新建按钮"+""-""*""/""sin"和归零按钮
JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix,
panelcenter.add(buttonthree);
panelcenter.add(buttonfour);
panelcenter.add(buttonfive);
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 实验报告一、实验目的本次 Java 实验的主要目的是通过实际编程操作,深入理解和掌握Java 语言的基本语法、面向对象编程的概念和方法,以及常用类库的使用。
同时,培养我们的问题解决能力、逻辑思维能力和代码规范意识,为今后的软件开发工作打下坚实的基础。
二、实验环境1、操作系统:Windows 102、开发工具:Eclipse IDE for Java Developers3、 JDK 版本:JDK 18三、实验内容本次实验共包括以下三个部分:1、 Java 基本语法练习变量与数据类型运算符与表达式控制流语句(ifelse、for、while、dowhile)数组2、面向对象编程实践类与对象的定义和使用构造函数与方法重载封装、继承与多态抽象类与接口3、 Java 常用类库应用String 类与字符串操作集合框架(ArrayList、HashMap)文件输入输出(File、FileReader、FileWriter)四、实验步骤及代码实现1、 Java 基本语法练习变量与数据类型:```javapublic class VariableDataType {public static void main(String args) {int age = 20;double salary = 50005;String name ="张三";boolean isStudent = true;Systemoutprintln("年龄:"+ age);Systemoutprintln("工资:"+ salary);Systemoutprintln("姓名:"+ name);Systemoutprintln("是否是学生:"+ isStudent);}}```运算符与表达式:```javapublic class OperatorExpression {public static void main(String args) {int num1 = 10;int num2 = 5;int sum = num1 + num2;int difference = num1 num2;int product = num1 num2;int quotient = num1 / num2;int remainder = num1 % num2; Systemoutprintln("和:"+ sum);Systemoutprintln("差:"+ difference);Systemoutprintln("积:"+ product);Systemoutprintln("商:"+ quotient);Systemoutprintln("余数:"+ remainder);}}```控制流语句:```javapublic class ControlFlowStatement {public static void main(String args) {// ifelse 语句int score = 80;if (score >= 90) {Systemoutprintln("优秀");} else if (score >= 80) {Systemoutprintln("良好");} else if (score >= 70) {Systemoutprintln("中等");} else if (score >= 60) {Systemoutprintln("及格");} else {Systemoutprintln("不及格");}// for 循环for (int i = 1; i <= 5; i++){Systemoutprintln("第" + i +"次循环");}// while 循环int j = 1;while (j <= 5) {Systemoutprintln("第" + j +"次 while 循环");j++;}// dowhile 循环int k = 1;do {Systemoutprintln("第" + k +"次 dowhile 循环");k++;} while (k <= 5);}}```数组:```javapublic class ArrayExample {public static void main(String args) {//一维数组int numbers ={1, 2, 3, 4, 5};for (int num : numbers) {Systemoutprintln(num);}//二维数组int matrix ={{1, 2, 3},{4, 5, 6},{7, 8, 9}};for (int row : matrix) {for (int num : row) {Systemoutprint(num +"");}Systemoutprintln();}}}```2、面向对象编程实践类与对象的定义和使用:```javapublic class Person {private String name;private int age;public Person(String name, int age) {thisname = name;thisage = age;}public void showInfo(){Systemoutprintln("姓名:"+ name +",年龄:"+ age);}public static void main(String args) {Person person1 = new Person("张三", 20);person1showInfo();}}```构造函数与方法重载:```javapublic class ConstructorOverloading {private String name;private int age;public ConstructorOverloading(String name) {thisname = name;}public ConstructorOverloading(String name, int age) {thisname = name;thisage = age;}public void showInfo(){if (age == 0) {Systemoutprintln("姓名:"+ name);} else {Systemoutprintln("姓名:"+ name +",年龄:"+ age);}}public static void main(String args) {ConstructorOverloading person1 = new ConstructorOverloading("张三");person1showInfo();ConstructorOverloading person2 = new ConstructorOverloading("李四", 25);person2showInfo();}}```封装、继承与多态:```java//父类class Animal {private String name;public Animal(String name) {thisname = name;}public void eat(){Systemoutprintln(name +"正在吃东西");}}//子类继承父类class Dog extends Animal {public Dog(String name) {super(name);}public void bark(){Systemoutprintln(name +"在叫");}}public class InheritancePolymorphism {public static void main(String args) {Animal animal = new Dog("小黑");animaleat();//向下转型为 Dog 类型调用 bark 方法if (animal instanceof Dog) {Dog dog =(Dog) animal;dogbark();}}}```抽象类与接口:```java//抽象类abstract class Shape {abstract void draw();}//实现抽象类的子类class Circle extends Shape {@Overridevoid draw(){Systemoutprintln("画一个圆");}}//接口interface Moveable {void move();}//实现接口的类class Car implements Moveable {@Overridepublic void move(){Systemoutprintln("汽车在移动");}}public class AbstractInterfaceExample {public static void main(String args) {Shape shape = new Circle();shapedraw();Moveable car = new Car();carmove();}}```3、 Java 常用类库应用String 类与字符串操作:```javapublic class StringOperation {public static void main(String args) {String str1 ="Hello, ";String str2 ="World!";String str3 = str1 + str2;Systemoutprintln(str3);int length = str3length();Systemoutprintln("字符串长度:"+ length);char charAt = str3charAt(5);Systemoutprintln("第 5 个字符:"+ charAt);boolean contains = str3contains("World");Systemoutprintln("是否包含 World:"+ contains);}}```集合框架(ArrayList、HashMap):```javaimport javautilArrayList;import javautilHashMap;import javautilMap;public class CollectionFramework {public static void main(String args) {// ArrayListArrayList<String> names = new ArrayList<>();namesadd("张三");namesadd("李四");namesadd("王五");for (String name : names) {Systemoutprintln(name);}// HashMapHashMap<String, Integer> ages = new HashMap<>();agesput("张三", 20);agesput("李四", 25);agesput("王五", 30);for (MapEntry<String, Integer> entry : agesentrySet()){Systemoutprintln(entrygetKey()+"的年龄是" +entrygetValue());}}}```文件输入输出(File、FileReader、FileWriter):```javaimport javaioFile;import javaioFileReader;import javaioFileWriter;import javaioIOException;public class FileIOExample {public static void main(String args) {//写入文件try (FileWriter writer = new FileWriter("outputtxt")){writerwrite("这是写入文件的内容");} catch (IOException e) {eprintStackTrace();}//读取文件try (FileReader reader = new FileReader("outputtxt")){int character;while ((character = readerread())!=-1) {Systemoutprint((char) character);}} catch (IOException e) {eprintStackTrace();}}}```五、实验结果与分析1、 Java 基本语法练习变量与数据类型:能够正确定义和使用各种数据类型的变量,并进行基本的运算和输出。
Java实验指导书2013版
第一部份绪论 (2)本课程实验的作用与任务 (2)本课程实验的基础知识 (2)本课程实验教学项目及其教学要求 (2)第二部份基本实验指导 (4)实验一:Java基本语法 (4)实验三:Java面向对象程序设计(一) (9)实验五:Java常用类 (18)实验七:Java集合 (21)实验九:GUI图形用户界面 (26)第一部份绪论本课程实验的作用与任务使学生进一步深刻理解Java语言基本概念、语法规则及程序结构,熟练掌握Java语言程序设计的基本方法,提高利用Java在网络环境下开发、设计应用程序的能力,从而进一步培养学生的创新能力和解决实际问题的能力。
熟悉JDK工具的编程和调试环境;熟练掌握选择和循环结构的程序设计;熟练掌握面向对象的程序设计思想,包括系统类的应用和用户自定义类;充分理解类的三种的特性:封装、继承和多态,特别是通过接口和抽象类理解多态;掌握图形用户界面的设计,特别是事件处理;掌握包的使用;掌握常用的输入输出流类的应用。
最后能根据实验的要求认真完成实验报告。
本课程实验的基础知识Java的基本数据类型包括:byte,short,int,long,double,char。
Java的数组属于引用类型的数据,是将相同类型的数据按顺序组成的一种符合数据类型。
Java的运算符有算术运算符、关系运算符、逻辑运算符、位运算符和赋值运算符,特别要注意它们的优先级。
Java的控制语句有if语句、switch语句、for语句、while语句、do-while语句。
类是组成Java程序的基本要素,类有两个重要的成员:成员变量和方法。
类是创建对象的模板,类将对象的属性和功能封装为一个整体。
成员变量和类变量的区别、实例方法和类方法的区别、方法的重载、成员的访问权限等都是实验课程所依据的重要理论。
继承、多态、接口、包及内部类都是Java中非常重要的概念。
Java使用“流”来读写数据。
Java的输入输出工作是通过FileInputStream类、FileReader 类、BufferedReader类、ByteArrayInputStream类、ByteArrayOutputStream类等完成的。
java 实验三BX120209王程强
电子信息学院实验报告书课程名:《 Java程序设计》题目:实验三Java语言类的特性实验类别: 【设计】班级:BX1202学号:121003610209姓名:王程强一、实验目的和要求学习Java类的私有成员和公共成员、类的构造方法、类方法的重载、类的静态成员的定义和使用。
二、实验内容和步骤第一题:(p45 实验26)编写一个Java程序,在程序中定义一个Person类,其中age属性是一个私有属性,并且范围在5~20之间。
程序代码:class Person{String name;private int age;public boolean setAge(int newAge){if(newAge<=20&&newAge>=5){age=newAge;return true;}elsereturn false;}public int getAge(){return age;}}public class App{public static void main(String[] arge){Person s1=new Person();="张三";if(s1.setAge(25)==true){System.out.println("姓名为:"+);System.out.println("年龄为:"+s1.age);}elseSystem.out.println("年龄错误");}}程序运行结果:第二题:(p46 实验27)编写一个Java程序,在程序中定义一个Student类,Student类有三个构造方法,分别对不同的属性进行初始化。
程序代码:class Student{String name;int age;public Student(){System.out.println("Student()构成方法被调用");}public Student(String newName){name=newName;System.out.println("Student(String[] newAge)构成方法被调用");}public Student(String newName,int newAge){name=newName;age=newAge;System.out.println("Student(String newName,int newAge)构成方法被调用");}public static void main(String[] arge){Student s1=new Student();s1=new Student("张三");s1=new Student("张三",15);}}程序运行结果:第三题:(p48 实验28)编写一个Java程序,在程序中定义一个Employee类,Employee类有四个构造方法,分别对不同的属性进行初始化,有一个setAge()方法能设置age属性值,有一个getAge()方法能返回age属性值。
java实验报告作业
java实验报告作业
《Java实验报告作业》
一、实验目的
本次实验的目的是通过编写Java程序来加深对Java语言的理解和掌握,以及
提高编程能力和解决问题的能力。
二、实验内容
1. 编写一个简单的Java程序,实现对输入数字进行排序的功能。
2. 编写一个Java程序,实现对输入字符串进行反转的功能。
3. 编写一个Java程序,实现对输入数组进行查找指定元素的功能。
三、实验步骤
1. 首先,我编写了一个名为NumberSort的Java类,其中包含一个sort方法,
用于对输入的数字进行排序。
2. 然后,我编写了一个名为StringReverse的Java类,其中包含一个reverse方法,用于对输入的字符串进行反转。
3. 最后,我编写了一个名为ArraySearch的Java类,其中包含一个search方法,用于对输入的数组进行查找指定元素。
四、实验结果
经过编写和调试,我成功实现了以上三个功能,并且在测试中都得到了正确的
结果。
五、实验总结
通过本次实验,我进一步加深了对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实验报告(实验三)
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实验报告实验报告java实验报告Java
java实验报告实验报告java实验报告Java一、实验目的本次实验的目的是熟悉Java语言,了解Java程序结构,掌握Java程序的开发流程,加深对Java语言特性的认识和理解。
二、实验内容本次实验内容为设计一个简单的Java程序,包括设计程序的需求分析、设计方案、编写代码、测试运行结果等环节。
三、实验分析3.1 需求分析设计一个Java程序,要求该程序能够实现以下功能:1. 用户可以输入两个数,程序可以对这两个数进行加、减、乘、除的操作,并输出运算结果。
2. 用户可以输入一个字符串,程序可以对该字符串进行反转输出。
3.2 设计方案根据需求分析,我们可以先设计一个简单的界面,包括输入框、选择运算符号的下拉框,以及一个按钮,当用户输入完毕后点击按钮即可进行相应的操作。
3.3 编写代码根据设计方案,我们先编写一个简单的界面代码:import java.awt.*;import javax.swing.*;public class Calculator extends JFrame {private JTextField text1, text2, text3;private JComboBox<String> combo;private JButton calcBtn, reverseBtn, factBtn;public Calculator() {super("Calculator");text1 = new JTextField(5);text2 = new JTextField(5);text3 = new JTextField(10);combo = new JComboBox<String>(new String[]{"+", "-", "*", "/"});calcBtn = new JButton("Calculate");reverseBtn = new JButton("Reverse");factBtn = new JButton("Factorial");JPanel panel2 = new JPanel();panel2.add(new JLabel("String:"));panel2.add(text3);panel2.add(reverseBtn);pack();setVisible(true);setDefaultCloseOperation(EXIT_ON_CLOSE);}该界面中包含了3个面板,一个用于加减乘除,一个用于字符串反转,一个用于阶乘操作。
java实验报告总结[范本]
java实验报告总结[范本] Java实验报告总结一、实验目的本次Java实验旨在让我们更深入地理解Java语言的基础知识,包括数据类型、控制结构、数组和对象等,并提升我们的编程实践能力和问题解决能力。
二、实验内容本次实验主要涉及Java语言的基础知识,包括数据类型、控制结构、数组和对象等。
我们通过编写程序来解决一些实际问题,例如计算器的实现、排序算法的实现等。
三、实验过程1.实验准备在开始实验之前,我首先复习了Java语言的基础知识,包括数据类型、控制结构、数组和对象等,以确保我对这些知识点有清晰的理解。
然后,我查阅了相关的Java编程书籍和网上资源,了解了Java编程的基本规范和最佳实践。
2.实验实施根据实验要求,我首先编写了一个计算器程序,该程序可以执行加、减、乘、除等基本运算。
然后,我实现了一个冒泡排序算法,用于对一个整数数组进行排序。
在实现这些程序的过程中,我遇到了许多问题,例如程序出现编译错误、运行时异常等。
但是,通过查阅相关资料和请教同学,我逐渐解决了这些问题。
3.实验总结通过本次实验,我深入理解了Java语言的基础知识,掌握了Java编程的基本技能和方法。
同时,我也发现了自己在编程中存在的问题和不足之处,例如对Java语言特性的理解不够深入、编程规范不够严格等。
针对这些问题,我将在今后的学习和实践中加以改进。
四、实验心得1.深入理解Java语言特性是编写高质量Java程序的关键。
例如,在实现计算器程序时,我必须深入理解Java的运算符和表达式规范才能确保程序的正确性。
2.掌握Java编程规范是提高程序可读性和可维护性的重要途径。
例如,在实现排序算法时,我必须遵循Java编程规范中的命名规范和注释规范才能使程序更易于理解和维护。
3.良好的编程习惯是避免程序出现问题的关键。
例如,在实现程序时,我必须注意程序的异常处理和错误处理才能确保程序的稳定性和可靠性。
4.团队合作是提高编程效率和质量的重要手段。
java 实验四BX120209王程强
电子信息学院实验报告书课程名:《 Java程序设计》题目:继承、抽象类和接口实验类别: 【设计】班级:BX1202学号:121003610209姓名:王程强一、实验目的和要求学习类的继承、类方法的覆盖、抽象类的定义和使用,学习包、接口、内部类的定义和使用。
二、实验内容和步骤第一题:(p56实验32)编写一个Java程序,在程序中定义一个PersonA类,定义一个Person类的子类StudentA类,再定义一个C1类,在main()方法中,生成StudentA的对象。
程序代码:class PersonA{private String name;public void setName(String newName){name=newName;}public String getName(){return name;}}class StudentA extends PersonA{private String department;public void setDepartment(String newDepartment){department=newDepartment;}public String getDepartment(){return department;}}class C1{public static void main(String[] args)StudentA s1=new StudentA();s1.setName("张三");s1.setDepartment("计算机系");System.out.println("你好,我是:"+s1.getName());System.out.println("我是"+s1.getDepartment()+"的学生");}}程序运行结果:第二题:(p58 实验33)编写一个Java 程序,在程序中定义一个PersonB类,定义一个PersonB类的子类StudentB类,再定义一个C2类,在main()方法中生成StudentB类的两个对象。
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程序设计实验指导书(答案)
第Ⅰ部分:实验指导实验1:Java开发环境J2SE一、实验目的(1)学习从网络上下载并安装J2SE开发工具。
(2)学习编写简单的Java Application程序.(3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。
二、实验任务从网络上下载或从CD-ROM直接安装J2SE开发工具,编写简单的Java Application程序,编译并运行这个程序。
三、实验内容1.安装J2SE开发工具Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从上进行下载。
安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:\j2sdk1.4.1_03目录下。
教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。
2.安装J2SE源代码编辑工具Edit Plus教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java 原程序的常用命令的用法。
3.编写并编译、运行一个Java Application程序。
创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。
public class HelloWorldApp{public static void main(String[] args){System.out.println("老师,你好!");}}4.编译并运行下面的Java Application程序,写出运行结果。
1:public class MyClass {2:private int day;3:private int month;4:private int year;5:public MyClass() {6:day = 1;7:month = 1;8:year = 1900;9:}10:public MyClass(int d,int m,int y) {11:day = d;12:month = m;13:year = y;14:}15:public void display(){16:System.out.println(day + "-" + month + "-" + year);17:}18:public static void main(String args[ ]) {19:MyClass m1 = new MyClass();20:MyClass m2 = new MyClass(25,12,2001);21:m1.display();22:m2.display();23:}24:}运行结果:1-1-190025-12-2001实验2:Java基本数据类型一、实验目的(1)掌握javadoc文档化工具的使用方法。
Java实验三Microsoft_Word_文档
Java面向对象程序设计实验报告课程名称Java面向对象程序设计实验名称继承与接口学院计算机专业班级计Y126姓名 xxxx _学号20120040300 实验日期:2014 年 4月17 日一.实验目的1.让学生巩固子类的继承性,子类对象的创建过程以及方法的继承与重写。
2.让学生掌握上转型对象的使用,理解不同对象的上转型对象调用同一方法可能产生不同的行为,即理解上转型对象在调用方法时可能具有多种形态。
3.让学生掌握面向接口编程思想。
二.实验内容(一)实验题目编写程序模拟中国人、美国人、北京人。
除主类外,程序中有四个类:People、ChinaPeople、AmericanPeople、BeijingPeople类。
要求如下:(1)People类有权限是protected的double型成员变量:height和weight,以及public void speakHello()、public void averageHeight()、public void averageWeight()方法。
(2)ChinaPeople类是People的子类,新增了public void chinaGongfu()方法。
要求ChinaPeople重写public void speakHello()、public void averageHeight()、public void averageWeight()方法。
(3)AmericanPeople类是People的子类,新增了public void americanBoxing()方法。
要求AmericanPeople重写public void speakHello()、public void averageHeight()、public void averageWeight()方法。
(4)BeijingPeople类是People的子类,新增了public void beijingOpera()方法。
java实验三报告模板
计算机科学与技术系实验报告专业名称软件工程课程名称面向对象程序设计项目名称实验三类和对象班级 15软工2班学号 06姓名孙魏东同组人员无实验日期一、实验目的与要求(简述本次实验要求达到的目的,涉及到的相关知识点,实验的具体要求。
)目的:1.掌握Java类的结构、类的定义、方法和属性的定义以及对象的实现。
2.掌握类及其成员修饰符的使用;掌握构造函数的使用;方法的参数传递和返回值的用法。
3.掌握类变量与实例变量,以及类方法与实例方法的区别。
要求:1. 正确地定义类、方法和属性,要求属性均定义成私有的(private)2. 学会方法的参数传递和返回值的用法3. 熟练使用类及其成员修饰符4. 使用构造函数创建类的对象,掌握默认构造函数和自定义构造函数的区别5. 类变量与实例变量,以及类方法与实例方法的使用(静态方法常常为应用程序中的其它类提供一些实用工具所用,在Java的类库中大量的静态方法正是出于此目的而定义的。
)6. 程序应包括各个被调用方法的执行结果的显示。
7. 写出实验报告。
要求记录编译和执行Java程序当中的系统错误信息提示,并给出解决办法。
(附运行界面、源代码)。
二、实验内容(根据本次实验项目的具体任务和要求,完成相关内容,可包括:实验目的、原理、算法描述或流程图、源代码、实验运行步骤、关键技术分析、测试数据与实验结果、其他)实验目的1:定义一个高校人员类School_Property,包含姓名、出生年月、性别、身份证号、手机号码,所在学校,入校时间,家庭地址等私有属性,以及访问属性的方法。
编写程序,创建一个高校人员类的对象,设置属性值,然后打印出该对象的各项属性信息。
原理:编写一个高校学生类School_Property,类里存放姓名name、出生年月dateofbirth、性别sex、身份证号id、手机号码tel,所在学校school,入校时间entertime,家庭地址address等私有属性,以及访问属性的方法getName(),getSex()等。
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⽅法,作⽤是替换掉指定位置的字符串,我把替换为了空字符串,就相当于删除了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子信息学院
实验报告书
课程名:《 Java程序设计》
题目:实验三Java语言类的特性实验类别: 【设计】
班级:BX1202
学号:121003610209
姓名:王程强
一、实验目的和要求
学习Java类的私有成员和公共成员、类的构造方法、类方法的重载、类的静态成员的定义和使用。
二、实验内容和步骤
第一题:(p45 实验26)
编写一个Java程序,在程序中定义一个Person类,其中age属性是一个私有属性,并且范围在5~20之间。
程序代码:
class Person
{
String name;
private int age;
public boolean setAge(int newAge)
{
if(newAge<=20&&newAge>=5)
{
age=newAge;
return true;
}
else
return false;
}
public int getAge()
{
return age;
}
}
public class App
{
public static void main(String[] arge)
{
Person s1=new Person();
="张三";
if(s1.setAge(25)==true)
{
System.out.println("姓名为:"+);
System.out.println("年龄为:"+s1.age);
}
else
System.out.println("年龄错误");
}
}
程序运行结果:
第二题:(p46 实验27)
编写一个Java程序,在程序中定义一个Student类,Student类有三个构造方法,分别对不同的属性进行初始化。
程序代码:
class Student
{
String name;
int age;
public Student()
{
System.out.println("Student()构成方法被调用");
}
public Student(String newName)
{
name=newName;
System.out.println("Student(String[] newAge)构成方法被调用");
}
public Student(String newName,int newAge)
{
name=newName;
age=newAge;
System.out.println("Student(String newName,int newAge)构成方法被调用");
}
public static void main(String[] arge)
{
Student s1=new Student();
s1=new Student("张三");
s1=new Student("张三",15);
}
}
程序运行结果:
第三题:(p48 实验28)
编写一个Java程序,在程序中定义一个Employee类,Employee类有四个构造方法,分别对不同的属性进行初始化,有一个setAge()方法能设置age属性值,有一个getAge()方法能返回age属性值。
程序代码:
class Employee
{
private String name;
private int age;
private double salary;
public Employee(String newName,int newAge,double newSalary)
{
this(20,8000);
System.out.println("三个参数的构造方法被调用");
name=newName;
}
public Employee(int newAge,double newSalary)
{
this(8000);
System.out.println("两个参数的构造方法被调用");
}
public Employee(double newSalary)
{
this();
System.out.println("一个参数的构造方法被调用");
salary=newSalary;
}
public Employee()
{
System.out.println("没有参数的构造方法被调用");
}
void setAge(int newAge)
{
age=newAge;
}
int getAge()
{
return age;
}
public static void main(String[] args)
{
Employee s1=new Employee("李四",20,8000);
s1.setAge(31);
System.out.println("年龄是"+s1.getAge());
}
}
程序运行结果:
第四题:(p56 实验29)
编写一个Java程序,在程序中定义一个MyPlus类,MyPlus类有三个plus( )方法,分别对不同的参数进行求和
程序代码:
程序代码:
class MyPlus
{
public int plus(int a,int b)
{
int s;
s=a+b;
return s;
}
public int plus(int a,int b,int c)
{
int s;
s=plus(a,b)*c;
return s;
}
public int plus(int a,int b,int c,int d)
{
int s;
s=plus(a,b,c)*d;
return s;
}
public static void main(String[] args)
{
MyPlus p = new MyPlus();
System.out.println("1+2=" + p.plus(1, 2));
System.out.println("1+2+3=" + p.plus(1, 2, 3));
System.out.println("1+2+3+4=" + p.plus(1, 2, 3, 4));
}
}
程序运行结果:
三、实验小结
本次实验过程中出现的错误就比较少了,第一点就是s1=new Student("张三",15);在调用静态类函数时候必须要用等于号来调用而调用pubic函数时候就可以用“.”来调用,其次就是在输出函数时候调用函数时候也必须带上“()”,对于构造类函数内调用其他构造类函数来说必须要用this语句。