《Java程序设计》上机实验
JAVA实验报告
实验报告课程名称:Java语言程序设计院(系):管理学院专业班级:姓名:学号:指导教师:2016 年11月16 日《Java语言程序设计》上机实验报告序号实验一组号 1 成绩名称Java循环及分支程序设计学时 2评阅教师签名:20 年月日一、实验目的1.熟悉上机环境、程序调试方法;2.能进行简单的循环及分支程序设计;二、实验内容1.熟悉java程序调试环境sdk+Jcreatorpro、Eclipse;2.循环及分支程序设计:设计并调试一个包含for、if的应用程序(求n!程序、1+2+…+n 程序、求π值程序等)三、实验硬件、软件环境1.PC计算机一台,配置为CPU为P42.8G,内存为512M,硬盘为80G;2.Windows7/xp + JavaSDK1.6/1.7 + JCreator/Eclipse。
四、实验算法设计<Begin (请在Begin与End之间输入你的内容) -- 本行勿删!勿改!(1)System.out.println("请输入n:");Scanner sc=new Scanner(System.in);for(i=1;i<=n;i++){res*=i;}if(i>n){System.out.println("NULL");}else{for(i=1;i<=n;i++){res+=i;}System.out.println("res="+res);}for(i=1;i<=1000;i++){if(i%2==0){res1=res1+(1/(2*i-1)); }elseif(i%2==1){res2=res2+(1/(2*i-1)); }}End> -- 本行勿删!勿改!五、程序设计<Begin (请在Begin与End之间输入你的内容) -- 本行勿删!勿改!package test;import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("请输入n:");Scanner sc=new Scanner(System.in);int n=sc.nextInt();int i;int res=1;for(i=1;i<=n;i++){res*=i;}System.out.println("res="+res);}}(2)package test;import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stub System.out.println("请输入n:");Scanner sc=new Scanner(System.in);int n=sc.nextInt();int i=1;int res=0;if(i>n){System.out.println("NULL");}else{for(i=1;i<=n;i++){res+=i;}System.out.println("res="+res);}100}}(3)package test;import java.util.Scanner;public class test {public static void main(String[] args) {// TODO Auto-generated method stub System.out.println("请输入n:1000");double res1=0,res2=0,i,res,pi;for(i=1;i<=1000;i++){if(i%2==0){res1=res1+(1/(2*i-1)); }elseif(i%2==1){res2=res2+(1/(2*i-1)); }}System.out.println("res1="+res1);System.out.println("res2="+res2);res=res2-res1;System.out.println("res="+res);pi=res*4;System.out.println("pi="+pi);}}End> -- 本行勿删!勿改!六、程序测试记录及结果、运行说明<Begin (请在Begin与End之间输入你的内容) -- 本行勿删!勿改!End> -- 本行勿删!勿改!七、实验总结<Begin (请在Begin与End之间输入你的内容) -- 本行勿删!勿改!通过本次实验学会了一些java的基础知识,知道在调试程序时如何去修改简单的错误,增加对Eclipse这个软件的熟悉程度。
大一学生java上机实验报告
大一学生java上机实验报告大一学生Java上机实验报告实验名称:Java基础语法练习实验目的:通过完成一系列Java基础语法的练习,熟悉Java 的语法规则和基本操作,加深对Java编程的理解。
实验内容及步骤:1. 编写一个Java程序,实现计算器功能。
该程序需要接收用户输入的两个数字和一个运算符,然后根据运算符的不同进行相应的运算,并将结果输出。
代码示例:```javaimport java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入第一个数字:");double num1 = scanner.nextDouble();System.out.print("请输入第二个数字:");double num2 = scanner.nextDouble();System.out.print("请输入运算符(+、-、*、/):");String operator = scanner.next();double result = 0;switch (operator) {case "+":result = num1 + num2;break;case "-":result = num1 - num2;break;case "*":result = num1 * num2;break;case "/":result = num1 / num2;break;default:System.out.println("输入的运算符无效!");return;}System.out.println("计算结果为:" + result);}}```2. 编写一个Java程序,实现2到100之间的所有素数的查找和输出。
Java程序设计上机实习
Java程序设计上机实习一、总体要求:本次上机实习是对前面学过的所有面向对象的编程思想以及编程方法的一个总结、回顾和实践,因此,开始设计前学生一定要先回顾以前所学的内容,明确本次作业所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。
二、题目(按照所在班级的学号进行选题,1、6、11、16、21、26、31选第1题,2、7、12、22、27、32选第2题,也就是按照学号顺次进行选题):1、汽车出租管理系统(1)功能要求:汽车出租管理系统项目要要求实现以下功能汽车汽车信息的查询汽车信息的修改汽车信息添加汽车信息的删除出租者查询、删除、修改、添加出租信息(2)系统界面要求:要求系统具有友好的用户界面,界面简洁、操作方便;2、ATM柜员机模拟项目(1)功能要求:ATM柜员机模拟项目要要求实现以下功能登陆查询剩余金额:存入现金;取款;转帐修改帐户密码查询明细(2)系统界面要求:要求系统具有友好的用户界面,界面简洁、操作方便;3、学生成绩管理系统(1)功能要求:学生成绩管理系统。
该系统主要用于对学生的成绩进行综合管理。
要求包括以下模块。
每个模块要实现对信息的增加,删除,修改,查询1 登陆模块2学生信息管理3 课程信息管理4 成绩信息管理5 学期信息管理(2)系统界面要求:要求系统具有友好的用户界面,界面简洁、操作方便;4、停车场系统(1)功能要求要求该停车场系统由车辆进处管理与后台管理两个子系统组成。
系统包含两类用户:管理员用户和普通用户。
管理员用户登录后,进入后台管理子系统对系统信息进行管理;普通用户登录后,进入停车场进出管理子系统。
进出管理子系统:主要完成车辆的准入与放行管理,主要包括长期卡用户与次卡用户的入场与出场管理功能,如图1所示:后台管理子系统:主要完成系统相关信息的管理。
主要功能包括:A.车场管理管理功能:用于查询某个时间段出入场信息、在场车辆信息以及车的历史停车记录等信息。
B.信息维护功能:用于对系统停车卡信息与用户信息进行维护。
《Java语言程序设计》上机实验指导手册
《Java语⾔程序设计》上机实验指导⼿册《Java语⾔程序设计》上机实验指导⼿册实验⼀ Java环境演练【⽬的】①安装并配置Java运⾏开发环境;②掌握开发Java应⽤程序的3个步骤:编写源⽂件、编译源⽂件和运⾏应⽤程序;③学习同时编译多个Java源⽂件。
【内容】1.⼀个简单的应⽤程序实验要求:编写⼀个简单的Java应⽤程序,该程序在命令⾏窗⼝输出两⾏⽂字:“你好,很⾼兴学习Java”和“We are students”。
程序运⾏效果⽰例:程序运⾏效果如下图所⽰:程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令⾏窗⼝输出"你好,很⾼兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令⾏窗⼝输出"We are students"}}实验后的练习:3.编译器怎样提⽰将System写成system这⼀错误?4.编译器怎样提⽰将String写成string这⼀错误?2.联合编译实验要求:编写4个源⽂件:Hello.java、A.java、B.java和C.java,每个源⽂件只有⼀个类,Hello.java是⼀个应⽤程序(含有main⽅法),使⽤了A、B和C类。
将4个源⽂件保存到同⼀⽬录中,例如:C:\100,然后编译Hello.java。
程序模板:模板1:Hello.javapublic class MainClass{public static void main (String args[ ]){【代码1】 //命令⾏窗⼝输出"你好,只需编译我"A a=new A();a.fA();B b=new B();b.fB();}}模板2 :A.javapublic class A{void fA(){【代码2】 //命令⾏窗⼝输出"I am A"}}模板3 :B.javapublic class B{void fB(){【代码3】 //命令⾏窗⼝输出"I am B"}public class C{void fC(){【代码4】 //命令⾏窗⼝输出"I am C"}}实验后的练习:5.将Hello.java编译通过后,不断修改A.java源⽂件中的代码,⽐如,在命令⾏窗⼝输出“我是A类”或“我被修改了”。
《Java程序设计》上机实验资料
实验1: 熟悉上机环境,编写并运行简单的java程序(3学时)实验目的(1)熟悉Java程序开发环境J2SDK+JCreator的安装及使用(2)熟悉Java Application和Applet程序的结构及开发步骤(3)熟练掌握if语句的使用(4)掌握Math.sqrt()等常用数学函数的用法(5)熟悉System.out.print()的用法实验内容及要求按Java Application和Applet两种方式分别编写程序,求一元二次方程ax2+bx+c=0的根(系数在程序中给定),并输出。
思考并验证(1)分别给定以下几组系数,给出输出结果a=1,b=5,c=3a=4, b=4, c=1a=2, b=3, c=2:+ i + i(2)如果程序的public类的类名和源文件的文件名不一样会有什么问题?(3)将类的public修饰去掉是否可行?接着再将类名换为其它是否可行?这说明了什么?(4)将程序中main前面的public去掉,重新编译执行你的程序,你看到了什么信息?(5)将程序中main前面的static去掉,重新编译执行你的程序,你看到了什么信息?为什么?(6)本次上机中,你还遇到了什么问题,是如何解决的?实验2:控制流程1(3学时)实验目的(1)进一步熟悉使用if语句(2)掌握循环语句实现循环的方法实验内容及要求输出时,只使用下面的语句:System.out.print(“”); //输出一个空格,并且不换行System.out.print(“*”); //输出一个字符’*’,并且不换行System.out.print(“+”); //输出一个字符’+’,并且不换行System.out.println(“*”;) //输出一个字符’*’,并换行编写程序输出(注:在图形的中心处有一个加号’+’):** * ** * * * ** * * + * * ** * * * ** * **思考并验证下面程序片段给出了从键盘输入一个整数的方法:import java.io.*;InputStreamReader ir;BufferedReader in;ir=new InputStreamReader(System.in);in=new BufferedReader (ir);try {String s=in.readLine();int i=Integer.parseInt(s);//转换成整形}catch(IOException e){}(1)如何修改程序,使得输出的图形可以很方便的在水平方向上移动?(2)如何修改你的程序,按输入行数n(为奇数)输出图形?选做:编程求支付方法的种数:取1元,2元,5元纸币10张,付给18元,有几种办法?班级号_学号_姓名_题号.java(多文件应压缩为rar):实验3:控制流程2(3学时)实验目的(1)掌握数据类型的含义(2)掌握break语句的使用(3)掌握用三种循环语句实现循环以及循环嵌套的方法实验内容及要求编程,计算11+22+33+……+66思考并验证(1)将内层循环改为另一种循环语句,比较哪种循环语句更适用于本程序?(2)修改程序使之计算11+22+33+……+2020,你的程序能得出正确结果吗?若不能,应如何修改?(3)考虑如何通过使用break语句修改这个程序,求出最大值n,使得11+22+…+n n小于等于long数据类型所能表示的最大值(即Long.MAX_V ALUE),并给出11+22+…+n n的确切值。
《Java语言程序设计基础教程》上机实验指导手册
《Java语言程序设计基础教程》上机实验指导手册实验一 Java环境演练【目的】①安装并配置Java运行开发环境;②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;③掌握开发Java Applet程序的3个步骤:编写源文件、编译源文件和运行Java Applet 程序;④学习同时编译多个Java源文件。
【内容】1.一个简单的应用程序✧实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}✧实验后的练习:1.编译器怎样提示丢失大括号的错误?2.编译器怎样提示语句丢失分号的错误?3.编译器怎样提示将System写成system这一错误?4.编译器怎样提示将String写成string这一错误?2.一个简单的Java Applet程序✧实验要求:编写一个简单的Java Applet程序,并在Java Applet中写两行文字:“这是一个Java Applet程序”和“我改变了字体”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:FirstApplet.javaimport java.applet.*;import java.awt.*;public class FirstApplet extends Applet{public void paint(Graphics g){g.setColor(Color.blue);【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序”g.setColor(Color.red);g.setFont(new Font("宋体",Font.BOLD,36));【代码2】//在Java Applet中绘制一行文字:“我改变了字体”}}✧实验后的练习:5.程序中的主类如果不用public修饰,编译能通过吗?6.程序中的主类如果不用public修饰,程序能正确运行吗?7.程序将paint方法误写成Paint,编译能通过么?8.程序将paint方法误写成Paint,运行时能看到有关的输出信息吗?3.联合编译✧实验要求:编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
《Java程序设计》上机实验报告 实验五 流、文件及基于文本的应用
信息科学与工程学院《Java程序设计》上机实验报告专业班级姓名学号主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)2.编写一个程序,能将一个源程序中的空行及注释去掉,并将处理后的内容写到目标文件中。
(源文件名称和目标文件名称均要求以命令行参数形式输入)import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.PrintWriter;public class CopyFile {static String delComm(String s){if(s==null)return s;int pos=s.indexOf("//"); //去掉以//开始的注释if(pos<0)return s;return s.substring(0,pos);}public static void main(String args[]){String infname="CopyFile.java";String outfname="CopyFile.txt";if(args.length>=1)infname=args[0];if(args.length>=2)outfname=args[1];try{File fin=new File(infname);File fout=new File(outfname);BufferedReader in = new BufferedReader(new FileReader(fin));PrintWriter out = new PrintWriter(new FileWriter(fout));int cnt=0;String s = in.readLine(); //写字符串while(s != null){主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)cnt ++;s=delComm(s); //去掉以//开始的注释out.println(cnt+":\t"+s);//写出s=in.readLine(); //读入}in.close(); //关闭缓冲读入流及文件读入流的连接out.close();}catch (FileNotFoundException e1){System.out.println("File not found");}catch(IOException e2){e2.printStackTrace();}}}主要问题的出错现象:1)运行程序后,无对应的输出结果出现2)源程序编写过程中,出现方法和类的调用无法完成.出错原因:1)函数调用时候,相关函数输入变量错误2)方法名的书写不符合规范,使得方法变为变量.解决方法及效果:1) 编写和调用类的方法时,注意参数的类型和数量的对应.2)规范命名.常量用大写字母,变量用小写字母开始,类以大写字母开始.实验小结:1) 为每个类分配正确的职责.尽量保持类功能单一. 不要在一个类中做太多事.2) BufferedReader的方法:readLine():String ,当他的返回值是null时,就表示读取完毕了。
java第一次上机实验报告
int i,j=1;
do{Random r=new Random();Math.abs(r.nextInt());i=r.nextInt(12)+1;
switch(i)
{case 1: System.out.println("随机生成的为"+i+"月January");break;
case 2: System.out.println("随机生成的为"+i+"月February");break;
case 3: System.out.println("随机生成的为"+i+"月March");break;
case 4: System.out.println("随机生成的为"+i+"月April");break;
3)掌握Java基本数据类型、运算符与表达式。
4)理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法。
主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)
1)编程实现:随机产生20个整数存放到数组中,然后对其按照升序进行排序,最后对排序前后的数组按照每5个数的方式输出。
}
for(i=0;i<20;i++)
{System.out.print(array[i]+" ");
if((i+1)%5==0)
System.out.print('\n');
《Java语言程序设计》上机实验指导手册(4)
《Java语言程序设计》上机实验指导手册(4)实验四 Java面向对象编程 (1)【目的】①通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想。
②了解类的封装方法。
③如何创建类和对象。
④了解成员变量和成员方法的特性。
【内容】1.对象的创建和使用。
实验要求:(1)Rectangle是一个矩形类,该类包含两个成员变量width和length分别表示矩形的宽和长。
成员方法area()用来计算矩形的面积。
试填写下列程序中的空白部分,以输出一个宽为2.5长为8.7的矩形的面积。
(提示:应首先填写Rectangle的构造函数)。
class JLab0401{public static void main(String[] args){Rectangle myRect = new Rectangle(2.5,7.8);double theArea;theArea = myRect.area();System.out.println("My rectangle has area " + theArea);}} //end of class JLab0401class Rectangle{double width, length;width=widthd;length=lengthd;public double area(){double a;a = length * width;return a;}} //end of class Rectangle(2)编译并执行你填写完整的程序。
(3)在上述程序的JLab0401类中main方法中添加相关语句,使之能够输出矩形的长和宽的值。
编译并执行该程序,以验证你更改的正确性。
(4)在(3)成功的基础上,在Rectangle类中添加公共方法setWidth和setLength方法,这两个方法分别用来设置矩形的长宽值。
在JLab0401类的main方法中使用Rectangle的默认无参数构造函数创建一个新的Rectangle类的实例rect。
《java程序设计上机实验报告》
《面向对象原理与语言》实验内容包括8个必做实验,在规定的16学时内完成。
实验一面向对象程程序设计(一)(必做实验,验证性实验,2学时)1.实验目的掌握Java语言的类和对象的定义及使用的基本方法;掌握继承机制以及子类和父类之间的转换;掌握多态性的概念及程序设计。
2.实验内容上机实现下列程序(1)P69, J_Finaliz.java; P72, J_teacher.java;P76, J_Student.java;P79,J_Employee.java, J_teacher.java。
(2)习题3.7, 习题3.9。
3.实验要求(1)熟悉从已知父类派生出子类的方法.(2)熟悉多态性的本质及其应用意义。
实验二面向对象程序设计(二)(必做实验,验证性实验,2学时)1.实验目的理解Java语言的封装性;掌握成员访问修饰符的使用和包的定义及使用;掌握静态成员的使用;掌握接口的定义和使用方法。
2.实验内容上机实现下列程序:(1)P83, J_Employee.java等三个程序;P87, J_employee.java, J_Month.java;P91, J_Book.java;P102, J_InnerClass.java, P104, J_InnerInterface.java。
(2)习题3.12,习题3.13。
3. 实验要求(1)熟悉四种访问修饰符类型的成员的访问方法。
(2)熟悉静态成员与非静态成员的区别。
(3)掌握匿名内部类的使用。
实验三数组、字符串、向量与哈希表的使用(必做实验,验证性实验,2学时)1. 实验目的掌握数组、字符串、向量和哈希表的使用。
2.实验内容上机实现下列程序:(1)P129, J_Grid15.java; P150,J_stringBuffer.java,P136, J_Intern.java;P158, J_HashTable.java;(2)P161,习题4.4,习题4.5,习题4.10。
《Java语言程序设计基础教程》上机实验指导手册
《Java语言程序设计基础教程》上机实验指导手册实验一 Java环境演练【目的】①安装并配置Java运行开发环境;②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;③掌握开发Java Applet程序的3个步骤:编写源文件、编译源文件和运行Java Applet 程序;④学习同时编译多个Java源文件。
【内容】1.一个简单的应用程序✧实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}✧实验后的练习:1.编译器怎样提示丢失大括号的错误?2.编译器怎样提示语句丢失分号的错误?3.编译器怎样提示将System写成system这一错误?4.编译器怎样提示将String写成string这一错误?2.一个简单的Java Applet程序✧实验要求:编写一个简单的Java Applet程序,并在Java Applet中写两行文字:“这是一个Java Applet程序”和“我改变了字体”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:FirstApplet.javaimport java.applet.*;import java.awt.*;public class FirstApplet extends Applet{public void paint(Graphics g){g.setColor(Color.blue);【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序”g.setColor(Color.red);g.setFont(new Font("宋体",Font.BOLD,36));【代码2】//在Java Applet中绘制一行文字:“我改变了字体”}}✧实验后的练习:5.程序中的主类如果不用public修饰,编译能通过吗?6.程序中的主类如果不用public修饰,程序能正确运行吗?7.程序将paint方法误写成Paint,编译能通过么?8.程序将paint方法误写成Paint,运行时能看到有关的输出信息吗?3.联合编译✧实验要求:编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
《Java程序设计》上机实验报告 实验三 面向对象程序设计的继承、多态等特性的练习
信息科学与工程学院《Java程序设计》上机实验报告专业班级姓名学号实验时间指导教师成绩主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)Student(String name,String sex,int age,String sno,String classno) {super(name,sex,age);this.sno=sno;this.classno=classno;}public String toString(){ return("姓名:"+name+" 性别:"+sex +" 年龄:"+age+ " 学号:"+sno+" 班号:"+classno+" ");}}public class TestStudentPerson {public static void main(String[] args){int i;Student stu[]=new Student[3];stu[1]=new Student("小明","男",20,"200912135138","2班");stu[2]=new Student("小木","女",23,"200912135136","5班");stu [1].updateAge(25);stu [2].updateAge(26);for(i=1;i<3;i++){System.out.println(stu[i]);}}}2)调试结果:主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)调试结果:2)将Shape类定义为abstact class Shape{……}public class TestVirtualInvoke {static void doStuff(Shape s){s.draw();}public static void main(String[] args) {Circle c=new Circle();Triangle t=new Triangle();Line l=new Line();doStuff(c); //作为实参,调用对象是3个类对象,上溯造型使其隐藏.doStuff(t);doStuff(l);}}abstract class Shape{abstract void draw();}class Circle extends Shape{void draw(){System.out.println("Draw Circle");}} //定义Shape抽象类的派生类Circleclass Triangle extends Shape{void draw(){System.out.println("Draw Three Triangle");}}//定义Shape抽象类的派生类Triangleclass Line extends Shape{void draw(){System.out.println("Draw Line");}}//定义Shape抽象类的派生类Line主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)调试结果:3)将Shape定义为interface Shape{……}public class TestVirtualInvoke {static void doStuff(Shape s){s.draw();}public static void main(String[] args) {Circle c=new Circle();Triangle t=new Triangle();Line l=new Line();doStuff(c); //作为实参,调用对象是3个类对象,上溯造型使其隐藏.doStuff(t);doStuff(l);}}interface Shape{public void draw();} //定义一个Shape接口class Circle implements Shape{public void draw(){System.out.println("Draw Circle");}} //基于Shape接口利用implements实现类Circleclass Triangle implements Shape{public void draw(){System.out.println("Draw Three Triangle");}}class Line implements Shape{public void draw(){System.out.println("Draw Line");}}调试结果:3.思考题:某小型公司,主要有三类人员:经理、兼职技术人员和兼职推销员。
软件学院上机实验报告(3篇)
实验名称:Java面向对象编程实验实验日期:2023年3月15日实验地点:软件学院实验室一、实验目的1. 理解Java面向对象编程的基本概念,包括类、对象、继承、多态等。
2. 掌握Java面向对象编程的基本语法和操作。
3. 能够运用面向对象编程思想设计简单的Java程序。
二、实验内容1. 创建一个名为“Student”的类,包含以下属性:姓名(name)、年龄(age)、性别(gender)。
2. 在“Student”类中定义一个构造方法,用于初始化对象的属性。
3. 定义一个名为“printInfo”的方法,用于打印学生的信息。
4. 创建两个“Student”对象,并分别设置其属性。
5. 调用“printInfo”方法,打印两个学生的信息。
三、实验步骤1. 打开IDEA软件,创建一个名为“Experiment1”的新项目。
2. 在项目中创建一个名为“Student”的Java类。
3. 在“Student”类中定义属性:name、age、gender。
4. 定义构造方法,初始化属性。
5. 定义“printInfo”方法,打印学生信息。
6. 在主类中创建“Student”对象,设置属性。
7. 调用“printInfo”方法,打印学生信息。
四、实验代码public class Student {private String name;private int age;private String gender;public Student(String name, int age, String gender) { = name;this.age = age;this.gender = gender;}public void printInfo() {System.out.println("姓名:" + name + ",年龄:" + age + ",性别:" + gender);}public static void main(String[] args) {Student student1 = new Student("张三", 20, "男");Student student2 = new Student("李四", 21, "女");student1.printInfo();student2.printInfo();}}```五、实验结果与分析1. 编译并运行程序,控制台输出如下信息:```姓名:张三,年龄:20,性别:男姓名:李四,年龄:21,性别:女```2. 通过本次实验,掌握了Java面向对象编程的基本概念和操作,能够运用面向对象编程思想设计简单的Java程序。
java上机实验报告(完整高分打印版)
Java语言程序设计实验报告学生所在学院:里仁学院学生所在班级:08计算机一班学生姓名:hejinhai指导教师:崔勇强教务处2010年6月第1篇核心基础篇实验一第3章Java语言基础3.2 表达式与语句3.2.2 运算符与表达式9 Java强制类型转换一,实验目的:掌握和理解强制类型转换原理格式及使用方法。
二,实验内容:编写程序定义整形变量x,把他强制类型转换成byte类型,观察输出结果。
三,源程序:public class Test {public static void main(String[] args) {int x=1200;byte b=(byte)x;System.out.println("转换结果是:"+b);}}输出结果:-80四,原理:根据低级数据和高级数据的相互转换规则,把输入的整形数1200转换成二进制数,转换成补码形式取前八位,输出结果。
实验二第3章Java语言基础3.2 表达式与语句3.2.2 运算符与表达式4 位运算符一,实验目的:理解和掌握移位运算符操作,使用方法,和格式。
二,实验内容:编写程序,定义两个整型变量,采用左移右移运算符 >> ,<<,和不带符号右移运算符 >>>,对整型变量进行移位运算,输出结果,观察结果。
三,源程序:public class Test {public static void main(String[] args) {int s1=1357;int s2=-1357;int s3=s1>>5;int s4=s2>>5;int s5=s1>>>5;int s6=s2>>>5;int s7=s1<<5;int s8=s2<<5;int s9=s1>>37;int s10=s2>>37;System.out.println("数字一是"+s1);System.out.println("数字二是"+s2);System.out.println("数字一的<<左移五位结果是"+s7);System.out.println("数字一的>>右移五位结果是"+s3);System.out.println("数字一的>>>右移五位结果是"+s5);System.out.println("数字二的<<左移五位结果是"+s8);System.out.println("数字二的>>右移五位结果是"+s4);System.out.println("数字二的>>>右移五位结果是"+s6);System.out.println("数字一的>>右移三十七位的结果是"+s9);System.out.println("数字二的>>右移三十七位的结果是"+s10);}}输出结果:数字一是1357数字二是-1357数字一的<<左移五位结果是43424数字一的>>右移五位结果是42数字一的>>>右移五位结果是42数字二的<<左移五位结果是-43424数字二的>>右移五位结果是-43数字二的>>>右移五位结果是134217685数字一的>>右移三十七位的结果是42数字二的>>右移三十七位的结果是-43四,实验原理:将输入的正型变量1357,-1357转换成补码形式,1357的补码,就是它他的二进制本身,-1357是二进制数诸位取反加1,按照要求进行移位运算(>> <<),若是左(右移),就按要求移相应的位数,高位补与符号位相同的数若是1就补1,若是0,就补0。
《Java语言程序设计》上机实验指导手册new2【精选】
《Java程序设计》上机实验指导书实验一类与对象【实验目的】①使用类来封装对象的属性和功能;②掌握类变量与实例变量,以及类方法与实例方法的区别;③理解接口、塑型、多态的概念并能熟练应用。
④巩固以下概念:子类的继承性子类对象的创建过程成员变量的继承与隐藏方法的继承与重写【实验任务】1、创建Java类与对象,并创建方法(1).编写一个Java程序片断,以定义一个表示学生的类Student。
这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得年龄”、“获得年龄”。
(2).为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。
编写一个JavaApplication程序,创建Student类的对象,并验证新增加的功能。
class Student{private long studentID;private int classID;private String name;private String sex;private int age;public Student(long studentID,int classID,String name,String sex,int age){this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}public long getStudentID(){return studentID;}public int getClassID(){}public String getName(){return name;}public String getSex(){return sex;}public int getAge(){return age;}public String toString(){return "学号:"+getStudentID()+"\n班号:"+getClassID()+"\n 姓名:"+getName()+"\n性别:"+getSex()+"\n年龄:"+getAge();}}public class StudentDemo{public static void main(String[] args){Student s1=new Student(90221,2,"Tom","male",20);System.out.println(s1.toString());}}运行结果:学号:90221班号:2姓名:Tom性别:male年龄:202、三角形、梯形和圆形的类封装✧实验要求:编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。
java上机实验实验报告
java上机实验实验报告Java上机实验实验报告引言:在学习Java编程语言的过程中,进行上机实验是非常重要的一环。
通过实际操作和编码,我们可以更好地理解和掌握Java的各种语法规则和编程技巧。
本文将对我进行的一次Java上机实验进行详细的实验报告。
实验目的:本次实验的目的是通过编写Java程序,实现一个简单的学生信息管理系统。
该系统可以实现学生信息的录入、查询、修改和删除等功能。
通过这个实验,我希望能够熟悉Java的面向对象编程思想,掌握Java的基本语法和常用类的使用。
实验过程:1. 设计学生类:首先,我设计了一个学生类,包含学生的姓名、学号、年龄和性别等属性,以及相应的get和set方法。
这样可以方便地对学生信息进行操作和管理。
2. 编写学生信息管理系统:接下来,我编写了一个学生信息管理系统的主类。
在该类中,我使用了Java的集合类ArrayList来存储学生对象,并实现了学生信息的录入、查询、修改和删除等功能。
通过使用循环和条件语句,我可以根据用户的选择来执行相应的操作。
3. 运行和测试:编写完毕后,我运行了该程序,并进行了一系列的测试。
我输入了学生信息,然后查询了该学生的信息,并进行了修改和删除操作。
通过测试,我发现程序能够正常运行,并且实现了预期的功能。
实验结果:通过本次实验,我成功地实现了一个简单的学生信息管理系统。
该系统可以方便地录入、查询、修改和删除学生信息,提高了信息管理的效率和准确性。
同时,通过编写这个系统,我对Java的面向对象编程有了更深入的理解,熟悉了Java的基本语法和常用类的使用。
实验总结:通过这次实验,我收获了很多。
首先,我熟悉了Java的面向对象编程思想,掌握了Java的基本语法和常用类的使用。
其次,通过实际操作和编码,我加深了对Java编程的理解和掌握。
最后,通过设计和实现一个学生信息管理系统,我提高了问题解决和编程能力。
不过,在实验过程中也遇到了一些困难和问题。
Java程序设计上机实验课件
Java程序设计上机实验课件一、实验目的本实验旨在通过编写Java程序,提高学生对Java程序设计的理解和实践能力,培养学生的逻辑思维和问题解决能力。
二、实验内容1. 实验环境搭建在开始实验之前,需要搭建Java开辟环境。
可以选择安装JDK(Java Development Kit)和IDE(Integrated Development Environment,集成开辟环境)。
2. 实验一:Hello World程序编写一个简单的Java程序,输出"Hello World"。
通过这个实验,学生可以了解Java程序的基本结构和运行方式。
3. 实验二:变量和数据类型通过编写Java程序,学生可以了解Java中的变量和数据类型的使用。
可以编写一个简单的计算器程序,实现加减乘除等基本运算。
4. 实验三:条件语句和循环结构通过编写Java程序,学生可以掌握条件语句(如if-else语句)和循环结构(如for循环和while循环)的使用。
可以编写一个简单的猜数字游戏程序。
5. 实验四:数组和字符串通过编写Java程序,学生可以了解数组和字符串的使用。
可以编写一个简单的学生成绩管理程序,实现学生成绩的录入、查询和统计等功能。
6. 实验五:面向对象编程通过编写Java程序,学生可以了解面向对象编程的基本概念和使用方法。
可以编写一个简单的图书管理系统,实现图书的借阅和归还等功能。
7. 实验六:文件操作通过编写Java程序,学生可以了解文件操作的基本方法。
可以编写一个简单的文件读写程序,实现文件的读取和写入等功能。
三、实验要求1. 实验过程中要注意代码的规范性和可读性,采用合适的命名方式和注释,使程序易于理解和维护。
2. 实验完成后,需将代码和实验报告提交给指导教师,包括实验过程、实验结果和实验心得等内容。
3. 学生可以自由选择编写程序的主题,但需满足实验要求并体现所学知识。
四、实验评分标准实验评分主要根据以下几个方面进行评判:1. 程序的功能是否完整,是否满足实验要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1: 熟悉上机环境,编写并运行简单的java程序(3学时)实验目的(1)熟悉Java程序开发环境J2SDK+JCreator的安装及使用(2)熟悉Java Application和Applet程序的结构及开发步骤(3)熟练掌握if语句的使用(4)掌握Math.sqrt()等常用数学函数的用法(5)熟悉System.out.print()的用法实验容及要求按Java Application和Applet两种方式分别编写程序,求一元二次方程ax2+bx+c=0的根(系数在程序中给定),并输出。
思考并验证(1)分别给定以下几组系数,给出输出结果a=1,b=5, c=3a=4, b=4, c=1a=2, b=3, c=2: + i + i(2)如果程序的public类的类名和源文件的文件名不一样会有什么问题?(3)将类的public修饰去掉是否可行?接着再将类名换为其它是否可行?这说明了什么?(4)将程序中main前面的public去掉,重新编译执行你的程序,你看到了什么信息?(5)将程序中main前面的static去掉,重新编译执行你的程序,你看到了什么信息?为什么?(6)本次上机中,你还遇到了什么问题,是如何解决的?实验2:控制流程1(3学时)实验目的(1)进一步熟悉使用if语句(2)掌握循环语句实现循环的方法实验容及要求输出时,只使用下面的语句:System.out.print(“”); //输出一个空格,并且不换行System.out.print(“*”); //输出一个字符’*’,并且不换行System.out.print(“+”); //输出一个字符’+’,并且不换行System.out.println(“*”;) //输出一个字符’*’,并换行编写程序输出(注:在图形的中心处有一个加号’+’):** * ** * * * ** * * + * * ** * * * ** * **思考并验证下面程序片段给出了从键盘输入一个整数的方法:import java.io.*;InputStreamReader ir;BufferedReader in;ir=new InputStreamReader(System.in);in=new BufferedReader (ir);try {String s=in.readLine();int i=Integer.parseInt(s);//转换成整形}catch(IOException e){}(1)如何修改程序,使得输出的图形可以很方便的在水平方向上移动?(2)如何修改你的程序,按输入行数n(为奇数)输出图形?选做:编程求支付方法的种数:取1元,2元,5元纸币10,付给18元,有几种办法?班级号_学号__题号.java(多文件应压缩为rar):实验3:控制流程2(3学时)实验目的(1)掌握数据类型的含义(2)掌握break语句的使用(3)掌握用三种循环语句实现循环以及循环嵌套的方法实验容及要求编程,计算11+22+33+……+66思考并验证(1)将层循环改为另一种循环语句,比较哪种循环语句更适用于本程序?(2)修改程序使之计算11+22+33+……+2020,你的程序能得出正确结果吗?若不能,应如何修改?(3)考虑如何通过使用break语句修改这个程序,求出最大值n,使得11+22+…+n n小于等于long数据类型所能表示的最大值(即Long.MAX_VALUE),并给出11+22+…+n n的确切值。
选做:求有几组和为1000的连续正整数,并输出这些整数。
实验4: 类和对象(数组)(3学时)实验目的(1)掌握Java语言中类和对象的基本概念(2)掌握Java程序设计中类和对象的定义及使用(3)学习使用数组,掌握数组的初始化方法及数组元素的引用实验容及要求编程,求解和为15的棋盘游戏问题。
要求将从1 Array到9的九个数填入3×3的棋盘中,使得各行、各列以及两个对角线上的三个数之和均为15,并打印出结果。
如左图。
思考并验证(1)在程序中,你用到了数组了吗,使用的是几维数组?如果没有使用,在程序中该如何使用数组?它给编程带来了什么好处?(2)编程思路:(3)在程序中,你定义了哪些类,它们分别具有什么含义?(4)在程序中,你是否生成了自己定义类的对象?如果要求不可以生成类的对象实例,程序应如何修改?实验5: 继承、多态(接口和包)(3学时)实验目的(1)掌握Java语言中继承和多态的相关概念(2)掌握Java程序设计中继承和多态机制的使用(3)掌握Java语言中接口和包的概念及使用实验容及要求仿真农场一个哺乳动物类如下所示:public class Mammal{protected int age = 2;protected int weight = 5;public Mammal(){System.out.println(“Mammal constructor”);}int getAge(){return age;}void setAge(int a){age = a;}int getWeight(){return weight;}void setWeight(int w){weight = w;}void move(){System.out.println(“Mammal move one step”);}void speak(){System.out.println(“Mammal speak!”);}void sleep(){System.out.println(“shhh, I’m sleeping.”);} }狗属哺乳动物,且它的属性有品种之分(在哺乳类基础上增加品种数据成员),叫声区别于其他动物(输出“Woof!”),还会摇尾巴(增加成员函数,输出“Tail wagging…”),乞讨食物(增加成员函数,输出“begging for food…”)。
猫、马、猪也属于哺乳动物,其叫声分别为:“Meow!”,“Winnie!”,“Oink!”。
编程分别使各个动物表现为不一样的行为。
要求将所有的动物类放置于animal.mammal包下。
定义两个新的类,表示宠物猫和宠物狗。
要求:这两个类能输出宠物所属的主人,价格等信息;将这两个类放置于animal.mammal.pet包下。
思考并验证(1)在程序中的哪些地方使用到了多态的机制?多态性为我们带来了什么好处?(2)试着把源文件放到另外一个目录下,然后编译,看看会得到什么信息?为什么会出现这种情况?(3)在定义宠物类的时候,是否使用了接口?如果没有使用,该定义一个什么接口,并如何修改程序?接口的使用为程序带来了什么好处?班级号_学号__题号.java(多文件应压缩为rar):实验6: 异常处理(3学时)实验目的(1)理解异常的概念(2)掌握Java程序设计中异常的处理机制实验容及要求一、输入以下代码,编译调试并分析执行结果程序1:编写用于演示异常处理机制的try-catch代码,用于测试ArrayIndexOutOfBoundsException异常,请调试:Public class CatchException{public static void main(String[] args){int [] arr=new int[10];try{arr[10]=10;}catch(ArrayIndexOutOfBoundsException e){e=new ArrayIndexoutBoundsException(“数组下标越界!”); throw e;}}}输入以上代码,并编译和调试,最后分析结果。
程序2:编写用于演示异常处理机制try-catch-finally的代码。
在此程序中,当一个数字除以0时,将引发ArithmeticException异常,引发的异常被catch 捕获。
Class Program2{String name=”大学软件学院”Int no1=10;Int no2=20;Program2(){try{System.out.println(name);System.out.println(“相除结果为:”+no1/no2);}catch(ArithmeticException I){System.out.println(“不能除以0!”);}finally{name=null;system.out.println(“Finally 已执行!”);}}public static void main(String args[]){new Program2();}}二、.编写一个程序,用于将来自用户的两个数字接受为命令行参数。
将第一个数字除以第二个数字并显示结果,处理可能的异常提示:使用两个catch语句,一个用于捕获ArrayIndexOutOfBoundsException异常(从命令行传来的参数个数不对),而另一个用于捕获ArithmaticException异常。
选做:编写一个程序,用于根据用户输入的命令行参数数量来计算长方形、正方形、三角形的面积。
如果输入的参数为一个、二个、三个则它们应分别对应正方形、长方形、三角形,如果没有参数,则通过异常处理方法现实错误消息。
(用于计算面积的方法是一个重载的方法)。
提示:定义一个抽象的父类,并提供一个抽象的方法area(). 再派生出三个子类,重写area()方法,然后在main方法中编写测试逻辑。
实验7: 输入/输出(3学时)实验目的(1)了解流类及相关的包(2)掌握常用的流类及其成员函数的使用方法(3)学习输入/输出的基本方式(4)巩固常用组件的使用及其事件的处理方式实验容及要求建立一个班级下拉式列表,列表项中有2004(1)班,2004(2)班,2004(3)班和2004(4)班。
当点击某个选项时,将其成绩单显示在文本区中。
思考并验证(1)抓取程序运行的一个界面:(2)你的程序涉及到的文件有:(3)你是通过什么途径建立这些文件的?(4)能否用word建立这些文件?实验8: 界面布局(3学时)实验目的(1)熟练运用标签、按钮、文本框等基本组件,掌握按钮等组件的事件处理方法(2)熟悉JTextArea的用法(3)熟悉下拉列表框的用法实验容及要求创建一个GUI应用程序,用于转换若干种货币。
提供给用户一个JTextArea 以用于输入数量。
同时还应提供给用户一种选择源货币名称和目的货币名称的途径。
同时为自己的测试设置至少三种不同的货币名称及转换汇率。
思考并验证(1)画出程序运行效果图:班级号_学号__题号.java(多文件应压缩为rar):实验9: Applet(3学时)实验目的(1)掌握Java Applet程序的结构和运行机制(2)掌握Java Applet程序的生命周期中触发的各种事件(3)复习Java语言中类的继承与方法的重载机制实验容及要求编写一个Applet程序,在窗体中分别绘制由’*’组成的正方形和圆,尽量保证’*’号之间的间距相等。