合工大JAVA实验报告 03
- 格式:pdf
- 大小:171.51 KB
- 文档页数:2
Java程序设计实验报告专业计算机及应用上机卡号姓名指导老师实验一 Java开发环境的安装与配置(一)实验目的1.通过本次实验,掌握JDK的安装步骤,理解环境变量PATH,CLASSPATH的作用,以及它们的设置方法。
2.熟悉TextPad(或JCreater) 编辑环境,编写简单的Application程序,并编译和解释执行。
3.掌握JA V A中包的概念,以及包与包的引用关系。
4.记录编译和执行JA V A程序当中的系统错误信息提示,并给出解决办法。
5.选择一种主流的JA V A开发工具(如NETBEANS)进行安装和初步使用。
(二)实验内容1.设置环境变量PATH,CLASSPATH,使得JA V A程序能正确编译和执行。
设置环境变量PATH:设置环境变量CLASSPATH:2.在Texpad(Jcreater)环境下编写一个HelloWorld.java程序,在DOS提示符下编译并执行程序。
HelloWorld.java程序的代码:public class HelloWorld{public static void main(String []args){System.out.println("Hello Java");}}运行结果:3.编写一个类A,它位于包a,保存到A.java中。
再编写一个类B,它位于包b 中,保存到B.java中。
在类B中实例化类A的一个对象。
分别编译类A和类B。
程序代码:package a;public class A {public A(){System.out.println("在类B中实例化类A成功");}}package b;import a.*;class B {public static void main(String []args){A text=new A();}}运行结果:实验总结通过本次试验,掌握了环境变量的作用和设置,熟悉了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开发环境的安装与配置(一)实验目的1.通过本次实验,掌握JDK的安装步骤,理解环境变量PATH,CLASSPATH的作用,以及它们的设置方法。
2.熟悉TextPad(或JCreater) 编辑环境,编写简单的Application程序,并编译和解释执行。
3.掌握JA V A中包的概念,以及包与包的引用关系。
4.记录编译和执行JA V A程序当中的系统错误信息提示,并给出解决办法。
5.选择一种主流的JA V A开发工具(如NETBEANS)进行安装和初步使用。
(二)实验内容1.设置环境变量PATH,CLASSPATH,使得JA V A程序能正确编译和执行。
设置环境变量PATH:设置环境变量CLASSPATH:2.在Texpad(Jcreater)环境下编写一个HelloWorld.java程序,在DOS提示符下编译并执行程序。
HelloWorld.java程序的代码:public class HelloWorld{public static void main(String []args){System.out.println("Hello Java");}}运行结果:3.编写一个类A,它位于包a,保存到A.java中。
再编写一个类B,它位于包b 中,保存到B.java中。
在类B中实例化类A的一个对象。
分别编译类A和类B。
程序代码:package a;public class A {public A(){System.out.println("在类B中实例化类A成功");}}package b;import a.*;class B {public static void main(String []args){A text=new A();}}运行结果:实验总结通过本次试验,掌握了环境变量的作用和设置,熟悉了java中包及包的应用关系。
java实验实验报告Java 实验实验报告一、实验目的本次 Java 实验的主要目的是通过实际操作和编程实践,深入理解和掌握 Java 编程语言的基本概念、语法结构、面向对象编程的思想以及常用类库的使用。
同时,培养我们解决实际问题的能力和编程思维,提高代码的质量和可读性。
二、实验环境1、操作系统:Windows 102、开发工具:IntelliJ IDEA3、 JDK 版本:18三、实验内容(一)基本语法练习1、数据类型与变量在 Java 中,我们学习了不同的数据类型,如整数类型(`int`、`long`)、浮点数类型(`float`、`double`)、字符类型(`char`)和布尔类型(`boolean`)。
通过定义和使用这些变量,我们能够存储和操作各种类型的数据。
```javaint age = 25;double salary = 500050;char grade ='A';boolean isStudent = true;```2、控制结构包括条件语句(`ifelse`、`switch`)和循环语句(`for`、`while`、`dowhile`)。
这些控制结构使我们能够根据不同的条件执行不同的代码块,或者重复执行一段代码。
```javaint num = 10;if (num > 5) {Systemoutprintln("Number is greater than 5");} else {Systemoutprintln("Number is less than or equal to 5");}switch (num) {Systemoutprintln("One");break;case 10:Systemoutprintln("Ten");break;default:Systemoutprintln("Unknown");}for (int i = 0; i < 5; i++){Systemoutprintln(i);}int count = 0;while (count < 3) {Systemoutprintln("Count: "+ count);count++;}count = 0;Systemoutprintln("Count: "+ count);count++;} while (count < 3);```(二)面向对象编程1、类与对象创建了自定义的类来表示现实世界中的实体。
操作系统实验报告班级:计算机科学与技术姓名:学号:实验3 进程的创建一、实验目的练习使用EOS API 函数CreateProcess 创建一个进程,掌握创建进程的方法,理解进程和程序的区别。
调试跟踪CreateProcess 函数的执行过程,了解进程的创建过程,理解进程是资源分配的单位。
二、实验过程记录1./*Hello.c*/#include "EOSApp.h"int main(int argc, char* argv[]){int i;for (i = 1; i <= 5; i++) {printf("Hello,world! %d\n", i);Sleep(1000);}printf("Bye-bye!\n");return 0;}作用:测试软盘镜像中的程序。
输出"Hello,world! I”并循环输出五次,每次挂起1000ms,最后输出” Bye-b ye!”。
结果:2./*NewProc.c*/#include "EOSApp.h"int main(int argc, char* argv[]){STARTUPINFO StartupInfo;PROCESS_INFORMATION ProcInfo;ULONG ulExitCode; // 子进程退出码INT nResult = 0; // main 函数返回值。
0 表示成功,非0 表示失败。
#ifdef _DEBUG__asm("int $3\n nop");#endifprintf("Create a process and wait for the process exit...\n\n");//// 使子进程和父进程使用相同的标准句柄。
//StartupInfo.StdInput = GetStdHandle(STD_INPUT_HANDLE);StartupInfo.StdOutput = GetStdHandle(STD_OUTPUT_HANDLE);StartupInfo.StdError = GetStdHandle(STD_ERROR_HANDLE);//// 创建子进程。
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 基本语法练习变量与数据类型:能够正确定义和使用各种数据类型的变量,并进行基本的运算和输出。
计算机科学与技术系实验报告专业名称软件工程课程名称面向对象程序设计项目名称实验三类和对象班级 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()等。
计算机与信息学院编译原理实验报告专业班级信息安全13-1班学生姓名及学号马骏 2013211869 课程教学班号任课教师李宏芒实验指导教师李宏芒实验地点实验楼机房2015 ~2016 学年第二学期实验1 词法分析设计一、实验目的通过本实验的编程实践,使学生了解词法分析的任务,掌握词法分析程序设计的原理和构造方法,使学生对编译的基本概念、原理和方法有完整的和清楚的理解,并能正确地、熟练地运用二、实验要求1、编程时注意编程风格:空行的使用、注释的使用、缩进的使用等。
2、将标识符填写的相应符号表须提供给编译程序的以后各阶段使用。
3、根据测试数据进行测试。
测试实例应包括以下三个部分:全部合法的输入。
各种组合的非法输入。
由记号组成的句子。
4、词法分析程序设计要求输出形式:例:输入VC++语言的实例程序:If i=0 then n++;a﹤= 3b %);输出形式为:单词二元序列类型位置(行,列)(单词种别,单词属性)for (1,for ) 关键字(1,1)i ( 6,i ) 标识符(1,2)= ( 4,= ) 关系运算符(1,3)120 ( 5,0 ) 常数(1,4)then ( 1,then) 关键字(1,5)n (6,n ) 标识符(1,6)++ Error Error (1,7);( 2, ; ) 分界符(1,8)a (6,a ) 标识符(2,1)﹤= (4,<= ) 关系运算符(2,2)3b Error Error (2,4)% Error Error (2,4)) ( 2, ) ) 分界符(2,5);( 2, ; ) 分界符(2,6)三、实验内容用VC++/VB/JA V A 语言实现对 C 语言子集的源程序进行词法分析。
通过输入源程序从左到右对字符串进行扫描和分解,依次输出各个单词的内部编码及单词符号自身值;若遇到错误则显示“Error”,然后跳过错误部分继续显示;同时进行标识符登记符号表的管理。
淮海工学院计算机工程学院实验报告书课程名:《Java语言实验与课程设计指导》题目:实验3——深入面向对象编程班级:学号:姓名:实验题目:1.定义一个学生类,定义一个大学生类和小学生类,这两个类是学生类的子类;定义一个选课接口,由大学生类实现该接口,定义一个年龄异常处理,当小学生年龄小于7岁时,弹出异常。
2.定义一个银行卡类,定义一个信用卡类和普通银行卡类,这两个类是银行卡类的子类;定义一个透支的接口,信用卡可以透支,普通银行卡不可以透支。
定义一个取款异常和透支异常,当普通银行卡取款超过银行卡余额时,弹出“取款异常”;当信用卡透支超过2万元时弹出“透支异常”。
实验代码:题1源代码:import java.awt.*;class student{String number,name,sex,bj;int age;student(String xuehao,String xingming,String xingbie,int nianling,String banji){number=xuehao;name=xingming;sex=xingbie;age=nianling;bj=banji;}}interface xuanke{abstract void select(String s);}interface illegal{abstract void illegal(int s);}class primary extends student implements illegal{String xx;primary(String xuehao,String xingming,String xingbie,int nianling,String banji,String xiaoxue){super(xuehao,xingming,xingbie,nianling,banji);xx=xiaoxue;}public void illegal(int s){age=s;if(age<7)System.out.println("\n出错~学生"+name+" 的年龄过小!");}}class college extends student implements xuanke{String dx,xk;college(String xuehao,String xingming,String xingbie,int nianling,String banji,String daxue){super(xuehao,xingming,xingbie,nianling,banji);dx=daxue;}public void select(String s){xk=s;}}public class test_1{public static void main(String args[]){primary p1=new primary("1","三","男",13,"五(1)班","ZZZ小学");System.out.println(p1.number+" "++" "+p1.sex+" "+p1.age+" "+p1.bj+" "+p1.xx);p1.illegal(p1.age);primary p2=new primary("\n2","小红","女",6,"一(1)班","YYY小学");System.out.println(p2.number+" "++" "+p2.sex+" "+p2.age+" "+p2.bj+" "+p2.xx);p2.illegal(p2.age);college c1=new college("3","小茗","女",20,"软件112","XXX大学");c1.select("现代密码学");System.out.print("\n"+c1.number+" "++" "+c1.sex+" "+c1.age+" "+c1.bj+" "+c1.dx+" "+c1.xk+"\n");}实验结果:题2源代码:import java.util.*;class bankcard{String kh,name;double yue;bankcard(String kahao,String yezhu,double shengyu) {kh=kahao;name=yezhu;yue=shengyu;}}interface touzhi{abstract void tz(double s);abstract void tzye(double s);abstract void illegal();}interface qkillegal{abstract void illegal();class mon extends bankcard implements qkillegal{mon(String kahao,String yezhu,double shengyu){super(kahao,yezhu,shengyu);}public void warning(){System.out.println("普通银行卡不可透支!");}public void illegal(){System.out.println("取款超额!");}}class xinyongka extends bankcard implements touzhi{double tzye;xinyongka(String kahao,String yezhu,double shengyu) {super(kahao,yezhu,shengyu);}public void tz(double s){tzye=s;}public void tzye(double s){double t=20000+yue-s;if(s>yue)System.out.println(t);}public void illegal(){System.out.println("透支超额!");}}public class test_3{public static void main(String args[]){mon c1=new mon("658","三",1200.00);System.out.println("卡号:"+c1.kh+"业主:"++"余额:"+c1.yue);c1.warning();System.out.println("请输入取款金额:");Scanner s1=new Scanner(System.in);double b=s1.nextDouble();if(b<c1.yue){double c=c1.yue-b;System.out.println("银行卡余额为:"+c);}elsec1.illegal();System.out.println("\n\n");xinyongka x1=new xinyongka("559","四",500.00);System.out.println("卡号:"+x1.kh+"业主:"++"余额:"+x1.yue);System.out.println("信用卡可透支!透支金额为20000元!");System.out.println("请输入要取款金额:");Scanner s2=new Scanner(System.in);double a=s2.nextDouble();if(a<=x1.yue){double d=x1.yue-a;System.out.println("银行卡余额为:"+d);}else if(a>x1.yue&&a<=(20000+x1.yue)){System.out.println("透支余额剩余:");x1.tzye(a);}elsex1.illegal();}}实验结果:普通银行卡类:输入普通银行卡取款金额若输入金额小于余额则若大于余额则信用卡类:输入取款金额,若输入金额小于余额则若输入金额大于余额小于透支金额与余额之和,则若大于透支金额与余额之和,则。