java实验报告4

合集下载

java实训报告(精选5篇)

java实训报告(精选5篇)

java实训报告(精选5篇)java实训报告1作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。

这篇__是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:1、项目一定要全新的项目,不能是以前做过的2、项目一定要企业真实项目,不能是精简以后的,不能脱离实际应用系统3、在开发时要和企业的开发保持一致4、在做项目的时候不应该有参考代码长话短说就是以上几点,如果你想要更多的了解,可以继续往后看。

一:项目的地位因为参加就业培训的学员很多都是有一定的计算机基础,大部分都具备一定的编程基础,尤其是在校或者是刚毕业的学生,多少都有一些基础。

他们欠缺的主要是两点:(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。

(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。

解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。

二:如何选择项目项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据java的研究和实践经验总结,选择项目的时候要注意以下方面:1:项目不能太大,也不能太小这个要根据项目练习的阶段,练习的时间,练习的目标来判断。

不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。

2:项目不能脱离实际应用系统项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。

因为培训的时间有限,必须让学员尽快地融入到实际项目的开发当中去。

任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。

3:项目应能覆盖所学的主要知识点学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了。

java实验报告4

java实验报告4

实验4 Java 语言面向对象基础编程一.实验目的(1)通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想(2)如何创建类和对象二、实验要求1、编写一个体现面向对象思想的程序;2、编写一个创建对象和使用对象的方法的程序;3、编写体现构造方法重载的程序;三.实验内容1、定义类创建类对象设计类来描述真实客观世界中的事物,使用类的成员变量来表示事物的属性和状态,使用类的成员方法来提供对成员变量的访问或修改(1)程序功能:设计一个用来描述汽车的类,使用类的非静态成员变量来表示汽车的车主姓名、当前的速率和当前方向盘的转向角度,使用类的非静态成员方法来表示改变汽车的速率和停车两个操作。

源代码:(自己编写)创建类的对象,使用对象的方法(类的非静态方法)来访问或修改对象的变量(类的非静态变量)(1)创建上面第一步的类的对象,在调用类的构造函数时指定对象的变量的初始值,以后再使用对象的方法来访问或修改对象的变量的值。

源代码:2、构造方法重载构造方法的名称和类同名,没有返回类型。

尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。

因此,构造方法不能直接调用,只能由new 操作符调用。

构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。

重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。

源代码如下:class RunDemo {private String userName, password;在该处编写不带参数的构造方法在该处编写带一个参数的构造方法在该处编写带两个参数的构造方法}public class EXP2 {public static void main(String[] args) {//使用不同的构造方法进行对象的初始化}}3、调用方法时参数传递的练习在Java 中,方法中的参数传递可以分为传值调用或对象方法调用等方式。

java实训报告(通用9篇)

java实训报告(通用9篇)

java实训报告java实训报告(通用9篇)在当下社会,大家逐渐认识到报告的重要性,写报告的时候要注意内容的完整。

那么一般报告是怎么写的呢?下面是小编精心整理的java实训报告,欢迎大家借鉴与参考,希望对大家有所帮助。

java实训报告篇1一、实训目的1.熟练掌握Java面向对象程序设计的基础知识。

2.熟练掌握Java中常用的Swing组件的使用方法。

3.熟练掌握Java程序中图形用户界面设计的方法。

4.熟练掌握使用JDBC操作数据库的方法。

5.通过实训,培养学生分析和解决实际问题的能力,提高调试和分析应用程序的能力,并为后续Java高级编程等专业课程的学习奠定良好的基础。

二、课程设计报告内容2.1 实训内容本课程设计的题目是设计一个简化的仓库管理系统。

该系统从仓库管理人员的角度出发,实现对货物信息、生产商信息的浏览、添加、删除和查询,同时还可以对货物出货、入货进行操作和控制。

设计内容主要包括系统分析、数据库、数据表的创建、系统各个窗体的布局及其编码实现。

系统功能分析是在系统开发的总体任务的基础上完成的。

该管理系统需要完成的基本功能主要有:用户管理:主要包括用户的添加、修改和删除。

供应商管理:主要包括供应商的添加、删除和修改。

产品管理:主要包括产品的添加、删除和进货、出货。

产品视图管理:主要包括产品查询、数据文件的导入、查询结果集的导出。

2.2 实训设备或软、硬件硬件:PⅣ及以上性能的PC机;软件:Windows 20xx或Windows XP系统;JDK工具;JCreator4.0环境2.3 功能设计及思想本次实训设计采用选择结构化开发方法,即用系统工程的思想和工程化的方法,按照用户至上的原则,自顶向下整体分析与设计和自底向上逐步实施的系统开发过程。

是组织、管理和控制信息系统开发过程的一种基本框架。

其基本思想:在系统分析时,采用自顶向下、逐层分解,由抽象到具体的逐步认识问题的过程;在系统设计的时候,先考虑系统整体的优化,再考虑局部的优化问题;在系统实施的时候,则坚持自底向上,先局部后整体,通过标准化模块的连接形成完整的系统。

java实验四报告

java实验四报告

任课教师:《JAVA程序设计》()实验报告学号:姓名:班级:实验指导书实验名称:图形用户界面实验学时安排:2实验类别:综合设计型实验实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1、掌握Java GUI主要的类及方法的创建及使用。

2、掌握Java 各种布局管理器的创建及使用。

3、掌握Java 对GUI的监听机制原理及主要GUI的监听接口。

4、通过试验,能够应用GUI类及布局管理器设计能够相应用户请求简单的图形界面二、实验内容P156 习题21)要求1: 在界面要求的基础上,增加菜单,包含菜单有-文件(打开保存退出等) 编辑(字体-粗体斜体颜色-红绿蓝) 帮助2:使用swing控件:JTextField, JComboBox, JCheckBox, JRadioButton3.事件响应(1)点击确定按钮时,将选择的个人姓名省份等信息显示在文本框内2)步骤•1)实现接口implements ActionListener•2) 设置确定按钮的监听者 buttonok.addActionListener(this);•3)动作实现•public void actionPerformed(ActionEvent e){ .. …. }•1)接口 JTextField 内容改变-DocumentListener•2)监听者 Document dt;•dt = textname.getDocument();•dt.addDocumentListener(this);•3) public void changedUpdate(DocumentEvent e)• {•if(e.getDocument()==dt){ }• }•public void insertUpdate(DocumentEvent e)• {•if(e.getDocument()==dt){ }• }•public void removeUpdate(DocumentEvent e) { }•JComboBox, JCheckBox, JRadioButton 选项内容改变- ItemListener public void itemStateChanged(ItemEvent e){if(e.getSource()==combopro)if(e.getStateChange()==ItemEvent.SELECTED)str=str+combopro.getSelectedItem().toString();……}三、程序代码package E26.test;import java.awt.*;import java.awt.event.*;import javax.swing.*;class aa extends JFrame implements ActionListener{Button b1,b2;TextArea textarea1;JTextField text1=new JTextField(5);JComboBox provincechoice;JCheckBox c[];String habits[]={"体育","音乐","美术"};ButtonGroup group;JRadioButton f,g;aa(String s){super(s);setSize(290,440);setLocation(120,120);setVisible(true);JMenuBar menubar;JMenu file,edit,font,color;JMenuItem jopen,jsave,jout,bold,italic,red,green,blue;menubar=new JMenuBar();file=new JMenu("文件");jopen=new JMenuItem("打开");jsave=new JMenuItem("保存");jout=new JMenuItem("退出");file.add(jopen);file.add(jsave);file.add(jout);edit=new JMenu("编辑帮助");font=new JMenu("字体");bold=new JMenuItem("粗体");italic=new JMenuItem("斜体");color=new JMenu("颜色");red=new JMenuItem("红色");green=new JMenuItem("绿色");blue=new JMenuItem("蓝色");font.add(bold);font.add(italic);color.add(red);color.add(green);color.add(blue);edit.add(font);edit.add(color);menubar.add(file);menubar.add(edit);setJMenuBar(menubar);validate();setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);Container contenePane=this.getContentPane();FlowLayout flow=new FlowLayout();flow.setAlignment(FlowLayout.LEFT);flow.setHgap(8);flow.setVgap(8);GridLayout grid=new GridLayout();Box firstline,secondline,thirdline,basebox;firstline=Box.createVerticalBox();firstline.add(new Label("姓名:"));firstline.add(text1);firstline.add(new Label("省份:"));String p[]={"湖南","浙江","江西"};provincechoice=new JComboBox<String>(p);provincechoice.setSelectedIndex(1);provincechoice.addActionListener(this);firstline.add(provincechoice);firstline.setLayout(flow);firstline.validate();secondline=Box.createVerticalBox();secondline.add(new Label("爱好:"));c=new JCheckBox[3];for(int i=0;i<3;i++){c[i]=new JCheckBox(habits[i]);add(c[i]);}secondline.add(new Label("性别:"));group=new ButtonGroup();f=new JRadioButton("男");g=new JRadioButton("女");group.add(f);group.add(g);secondline.add(f);secondline.add(g);secondline.setLayout(flow);secondline.validate();basebox=Box.createHorizontalBox();basebox.add(firstline);basebox.add(secondline);contenePane.add(basebox);textarea1=new TextArea(10,30);add(textarea1);b1=new Button("确定");b2=new Button("取消");add(b1);add(b2);b1.addActionListener(this);b2.addActionListener(this);contenePane.setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==b1){String n=text1.getText();String x=provincechoice.getSelectedItem().toString();String y[]=new String[3];String s;if(group.getSelection()==f.getModel())s="男";elses="女";int j=0,k=0;for(j=0,k=-1;j<3;j++){if(c[j].isSelected()){k++;y[k]=habits[j];}}textarea1.append("姓名:"+n+"\n\n"+"省份:"+x+"\n\n"+"爱好:");for(j=0;j<3;j++){while(y[j]!=null){textarea1.append(y[j]+" ");break;}}textarea1.append("\n\n"+"性别:"+s+"\n\n");}if(e.getSource()==b2){textarea1.setText("");}}}public class awt {public static void main(String args[]){Firstwindows win=new Firstwindows("简单窗口");}}四、运行结果与测试分析五、心得体会本次实验由书上个例子中找相似的,完成最终设计,比较麻烦。

java实验报告4

java实验报告4

实验报告_实验4 常用类(学生学号_姓名) 一、实验目的1.掌握String类的基本构造方法和常用方法的使用;2.熟悉StringBuffer类的追加、插入、查找、替换、删除等操作;3.熟悉Math类常量及常用方法的调用;4.熟悉包装类的功能、重要属性、主要构造器和常用方法;5.了解StringTokenizer类的一般使用。

二、实验内容与步骤1、(基础题)运行下列程序,并回答问题:(1) 对于String对象来说,“==”运算符与equals( )方法的功能有什么不同?“==”运算符比较两个字符串引用是否指向同一个对象。

equals( )方法在于比较两个字符串的内容是否完全相同。

(2) s1和s2是否指向同一对象?为什么?是,因为s1和s2是字符串常量,如果用户创建了一个字符串常量,系统首先会在字符串池中查找有无相同内容的字符串存在,若有就把原有取出使用,若无则重新生成,故s1和s2指向同一对象。

(3) s3和s4是否指向同一对象?为什么?不是,用构造器生成的字符串对象,它会在堆中生成一个对象,很明显s3和s4指向了不同的对象。

(4) s1==s3是否成立?为什么?不成立,“==”运算符比较两个字符串引用是否指向同一个对象。

很明显s1和s3指向了不同的对象。

(5) s1、s2、s3、s4的内容是否相同?是(6) compareTo( )方法的功能是什么?当比较结果分别为负数、正数、0 时,代表什么含义?pareTo(Str2);其返回的是一个int类型值。

若Str1等于参数字符串Str2字符串,则返回0;若该Str1按字典顺序小于参数字符串Str2,则返回值小于0;若Str1按字典顺序大于参数字符串Str2,则返回值大于0。

2、(基础题)根据程序注释,将所缺代码补充完整,然后运行程序:程序所缺代码:String str = new String("*****************.cn");System.out.println("字符串的长度: " + str.length()); // 输出字符串的长度System.out.println("字符串的首字符: " + str.charAt(0));// 输出字符串的首字符System.out.println("字符\'@\'的索引号(即下标): " + str.indexOf('@'));System.out.println("该邮箱的顶级域名(即最后一个单词): " + str.substring(stIndexOf('.')+1));System.out.println("字符串全部以大写方式输出为: " + str. toUpperCase());3、(基础题)根据程序注释,将所缺代码补充完整,再运行程序::程序所缺代码StringBuffer sb= new StringBuffer(“里约热内卢奥运会举行时间:”);sb.append(“8月8日晚8点”); // 在sb尾部追加"8月8日晚8点"字符串sb.insert(sb.length()-1,” 8月5日-21日”); //在sb尾部追加"8月5日-21日"字符串sb.replace(n, n+5,"第31届"); // 将字符串中"里约热内卢"替换为"第31届"System.out.println("字符串的长度为: "+ sb.length());// 输出字符串的长度sb.delete(12,25); // 删除字符串中从第12个字符开始到第25个字符为止的内容。

java第四次实验报告

java第四次实验报告
this.month = month;
this.year = year;
this.day = day;
}
public void ChangeToDate(Date1 date) {
String Month[] =
{
"January","Februry","March", "April", "May","June",
{"drove","jumped","ran","walked","skiped"},
{"to","from","over","'under","on"},
{"the","a","one","some","any"},
{"boy","girl","dog","town","car"} };
TextArea output;
Button m;
int b,c;
public void init() {
output=new TextArea(25,50);
m=new Button("开始");
add(output);
add(m);
}
public boolean action(Event e,Object o){
output.setText ("");

JAVA实验报告

JAVA实验报告

实验一:实验目的●学习下载最新版本的JDK。

●学习安装与设置JDK运行环境。

●解决JDK开发环境配置中的常见问题。

实验二:实验目的●了解Java应用程序的结构。

●学习Java应用程序源程序的编辑。

●学习Java源程序的编译。

●学习Java应用程序的运行。

●学习解决Java源程序编译过程中的常见问题。

实验要求编写一个比较简单的Java应用程序,该程序将会在命令提示符窗口下输出一句话:Java 世界欢迎你!实验三:实验目的●了解Java小程序的结构。

●学习Java小程序的编译、运行。

●了解Html语言中的Applet标签。

实验四:实验目的●学习标识符的命名规则。

●学习基本数据类型变量的声明。

●学习基本数据类型变量的初始化。

●明确局部变量使用前初始化的意义。

●学习常量的使用。

实验要求编写一个Java 程序,在程序中声明各种基本数据类型的变量,对它们进行初始化,再显示它们各自的值;定义一个双精度数据类型的常量,并显示它的值。

实验五:实验目的●学习算术运算符中的求模运算。

●学习算术运算符中的自增运算。

●学习算术运算符中的自减运算。

实验要求编写一个Java 程序,在程序中进行求模运算、自增和自减运算。

实验五:实验目的●学习算术运算符中的求模运算。

●学习算术运算符中的自增运算。

●学习算术运算符中的自减运算。

实验要求编写一个Java 程序,在程序中进行求模运算、自增和自减运算。

实验六:实验目的●学习算术运算符中的整数除法。

●学习算术运算符中的浮点数除法。

●学习算术运算符中的整数与浮点数混合除法。

实验要求编写一个Java 程序,在程序中进行整数除法、浮点数除法和整数与浮点数混合除法运算。

实验七:实验目的●学习逻辑运算符中的与运算。

●学习逻辑运算符中的或运算。

●学习逻辑运算符中的非运算。

实验要求编写一个Java 程序,在程序中进行与运算、或运算和非运算。

实验八:实验目的●学习字符串转换为数值型数据的方法。

●学习数值型数据转换成字符串的方法。

Java程序设计实验报告4

Java程序设计实验报告4

课程实验报告
的文件对象,然后对str中的每个对象调用isFile()方法判断是否是文本文件,并计数输出
(4)在外层使用for循环对每个文本文件遍历行数
(5)在内层创建FileReader类的对象reader1和BufferedReader类的对象reader2,设置行数rows=0,分别读每个文本文件计算行数
调试过程及实验结果1. 2.
总结通过第一个实验我熟悉了BufferedReader、BufferedWriter等流类的相关使用方法,掌握了向文件中读写数据的基本步骤;通过第二个实验我掌握了Java File类相关方法的调用和使用,熟悉对文本文件和非文本文件基本方法的使用。

附录(手抄源程序清单,对关键步骤需要添加注释,写在报告背面即可,无需附页,严禁打印)
*注意:
--雷同无效,禁止抄袭;
--A4纸单面打印,左侧装订,2个钉;
--以班为单位,各班负责人收齐并按学号由小到大顺序排序后上交;。

Java实验报告04

Java实验报告04

实验四:接口
实验目的:掌握接口的定义及实现,掌握面向接口的编程思想
实验内容:
1、求任意柱体的体积(面向接口的编程思想)
2、动物园动物管理:动物们都会吃东西,但不同的动物吃的东西不一样;动物都会叫,但不同动物的叫声不一样;有的动物需要表演,有的动物不能表演;有的动物允许游客喂食物,有的不能喂食物;
实验步骤:
一.求任意柱体的体积(面向接口的编程思想)
1、工程图
2、实现步骤
创建一个shape包,并在shape包中建立一个IShape接口,代码如下:
创建一个cylinder包,并在包中建立Cylinder类,代码如下:
建立一个myshape类,并在其中建立两个类,Circle和Rectangle,Circle代码如下:
Rectangle类中代码如下:
建立一个text包,在此包中建立一个Text类,代码如下:
3、结果截图
二.动物园动物管理问题
1、工程图
2、实现步骤
建立一个myinterface包,并在该包中建立两个接口:IFeed,IPerformence,IFeed 接口代码如下:
,IPerformence接口中代码如下:
建立一个myclass包,在此包中建立三个类:Animal,Elephant,Monkey.
Animal类中代码如下:
Elephant中代码如下:
Monkey类中代码如下:
建立一个text包,并建立一个Text类,代码如下:
3、结果截图。

java_实验四

java_实验四

武汉工程大学计算机科学与工程学院实验报告[4]一、实验目的1)了解Java.awt包及Swing的新增特性。

2)了解Java系统图形用户界面的基本工作原理和界面设计的步骤。

3)了解图形用户界面的事件响应机制。

4)了解图形用户界面各种常用的基本组件的使用方法及其事件响应。

5)掌握Java常用组件的应用6)掌握图形用户界面各种布局策略的设计与使用二、实验要求1)创建一个简单的图形用户界面。

2)使用Java类库中提供的组件,并添加到图形用户界面中。

3)通过Java事件处理机制,实现与用户的交互信息。

4)练习使用布局管理器5)使用Java类库中提供的组件,并添加到图形用户界面中6)通过Java事件处理机制,实现与用户的交互信息三、实验内容对一个优秀的应用程序来说,良好的图形用户界面是必不可少的。

因为只有通过图形界面,用户才能够与程序友好的交互。

缺少良好的图形用户界面,将会给用户理解和应用程序带来很多不便。

创建一个完整的图形用户界面的应用程序大致流程如下:1)引用需要的包和类。

2)设置一个顶层的容器。

3)根据需要为容器设置布局管理器或使用默认布局管理器。

4)将组件添加到容器内,位置自行设计。

5)为响应事件的组件编写事件处理代码。

下面我们先建立一个简单的图形用户界面,然后通过合适的布局管理器,将各种常用组件添加到图形用户界面中,实现与用户的交互信息。

1. 创建简单的图形用户界面(1)创建简单的 Frame 框架在 AWT 库中,对应于框架的类是 Frame,在 Swing 库中,相应的类是 JFrame。

JFrame 类扩展了 Frame 类。

大部分 ATWT 组件在 Swing 中都有等价的组件,它们在表示形式上差一个“J”。

框架是一个容器,可以在这个容器中放入其他一些图形用户界面组件,如按钮、菜单等,从而组成一个功能完善的程序。

下面的例子是建立一个 Frame 框架,通过这个例子学习如何创建一个简单的图形用户界面。

java实训报告(7篇)

java实训报告(7篇)

java实训报告java实训报告(7篇)随着社会一步步向前发展,报告的使用成为日常生活的常态,其在写作上有一定的技巧。

一听到写报告马上头昏脑涨?以下是小编收集整理的java实训报告,仅供参考,希望能够帮助到大家。

java实训报告1内蒙古商贸职业学院计算机系学生校内实验实训报告20 --20 学年第学期系部:计算机系课程名称:Java程序设计教程专业班级:内蒙古商贸职业学院计算机系制填写说明1、实验项目名称:要用最简练的语言反映实验的内容,要与实验指导书或课程标准中相一致。

2、实验类型:一般需要说明是验证型实验、设计型实验、创新型实验、综合型实验。

3、实验室:实验实训场所的名称;组别:实验分组参加人员所在的组号。

4、实验方案设计(步骤):实验项目的设计思路、步骤和方法等,这是实验报告极其重要的内容,概括整个实验过程。

对于操作型实验(验证型),要写明需要经过哪几个步骤来实现其操作。

对于设计型和综合型实验,在上述内容基础上还应该画出流程图和设计方法,再配以相应的文字说明。

对于创新型实验,还应注明其创新点、特色。

5、实验小结:对本次实验实训的心得体会、思考和建议等。

6、备注:分组实验中组内成员分工、任务以及其他说明事项。

注意:①实验实训分组完成的,每组提交一份报告即可,但必须说明人员分工及职责。

不分组要求全体成员独立完成的实验实训项目可由指导老师根据个人完成情况分组填写。

②实验成绩按照百分制记,根据教学大纲及课程考核要求具体区分独立计算、折算记入两种情况。

③本实验实训报告是根据计算机系实验的具体情况在学院教务处制的实验实训报告的基础上进行改制的。

特此说明。

成绩单组别:小组成员:篇二:实训总结实训收获总结报告学部:计算机信息学院学科门类:计算机信息类专业:计算机应用技术姓名:朱恩林学号:12310020020实习单位:北京盛威南凌信息科技有限公司指导教师:王洪钊实习时间:20xx年5月15号—9月23号一、实训目的计算机信息管理专业的java实训在教学计划中是实训、实习课程。

java实验报告

java实验报告

实验项目名称:Java编程基础实验学时: 4 同组学生姓名:实验地点:实验日期: 2020年5月19日实验成绩:批改教师:批改时间:一、基于OBE模式的实验目的和要求1)具备使用JDK及Eclipse集成环境编辑编译及调试Java源程序的能力2)具备使用Java语言阅读和实现小型结构化程序的能力二、实验仪器和设备PC,Windows XP或以上版本、JDK、Eclipse三、实验过程第一次实验:1.题目:16版.水仙花数1、实验要求本实验要求:按用户输入的数值,判断该数值是否为“水仙花数”。

1-1. 什么是水仙花数:1-1.1. 水仙花数:是指一个三位数,其各个位数的立方和等于该数本身。

1-1.2. 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

1-2. 创建工程并配置环境:1-2.1. 限制1. 工程取名:SE_JAVA_EXP_E005。

1-2.2. 限制2. 创建包,取名:cn.campsg.java.experiment。

1-2.3. 限制3. 创建类,类名:DaffodilsNum。

1-3. 获取用户输入的数值:1-3.1. 要求用户输入数值,提示语句:”请输入0-1000内的数字:”1-4. 判断输入的数值是否合法:1-4.1. 用户输入数值范围应在0-1000内。

1-4.2. 输入不合法,显示提示:”输入的不是0-1000内的数字!”1-5. 判断输入的数值是否是水仙花数:2-2.2. 调用Scanner的nextInt方法获取用户输入的数值。

2-2.3. 调用close方法关闭Scanner。

2-3. 判断输入的数值是否合法:2-3.1. 如用户输入数值范围不在0-1000内,打印提示语句:”输入的不是0-1000内的数字!”2-3.2. 退出程序。

(提示:return)2-4. 判断输入的数值是否是水仙花数:2-4.1. 获取用户输入的数值的个位数= 数值%10。

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

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

java实验报告总结_java总结范文
本次Java实验主要内容包括Java基础语法的学习和综合实践的应用。

通过学习和实践,我加深了对Java编程语言的理解和运用,并积累了一定的代码编写经验。

以下是我对本次实验的总结:
一、Java基础语法的学习
在Java基础语法的学习中,我主要学习了数据类型、变量、运算符、控制语句、方法和类等基本知识。

这些知识对于开展后续的Java编程工作至关重要。

通过学习,我深刻理解了Java程序如何执行和实现逻辑功能,也初步掌握了Java的面向对象程序设计思想。

二、实践应用
通过综合实践,我学习了Java的许多实用工具和开发框架。

我熟练运用了Eclipse,掌握了Java Web开发的基础知识,学习了常用的开源框架Spring和Hibernate。

通过编写一些简单的实例程序,我掌握了Java开发的应用技巧,了解了Java应用开发的具体过程,也增强了代码调试和排错的能力。

三、思考与反思
通过本次实验,我深刻认识到Java编程的重要性。

Java语言是当今工业界最为广泛
使用的编程语言之一,我深刻认识到要成为一名优秀的Java程序员,需要良好的编程思想和扎实的代码功底。

在实践应用中,我发现实践经验的积累对于提高Java编程能力至关重要,只有不断的实践和尝试,才能不断地提高自己的编程水平。

总之,本次实验让我掌握了Java语言的基本语法和编程技巧,增强了我的综合运用能力,提高了我的编程实践能力,也让我更加深入地认识到Java编程的重要性和必要性。

我将在以后的学习中继续加强Java编程能力的学习和实践,不断提升个人的编程水平,为日后的发展打下良好的基础。

java web 实验报告 4

java web  实验报告  4

实验报告成绩:教师:课程名称: Java Web应用开发技术实用教程实验名称: JDBC技术一、实验目的(1)使用JDBC技术。

(2)在JSP中使用数据库。

二、实验工具(1)JDK 1.4、JDK 1.5或JDK 1.6,可以从SUN公司的网站免费下载。

(2)编辑工具JCreator,可以从网上免费下载。

(3)Tomcat服务器,也可以从网上免费下载。

三、实验步骤(1)数据库基本操作。

1)建立数据库表product,其结构如下:┏━━━━━━━┳━━━━┓┃列名┃类型┃┣━━━━━━━╋━━━━┫┃ProductID ┃.mt ┃┣━━━━━━━╋━━━━┫┃ ProductName ┃ text ┃┣━━━━━━━╋━━━━┫┃ ProductPrice ┃.mt ┃┣━━━━━━━╋━━━━┫2)在JCreator中输入以下文档,并保存为ProductAdd.iava。

Importjava.sql.*;class ProductAdd(129页代码}3)编译ProductAdd.iava4)运行ProductAdd.iava(2)在JSP中使用JDBC。

1)用上一章使用的student表注册数据源,名称为sun,用户名为sa,无口令。

2)打开JCreator,输入以下文档,并保存为seatoh.jsp。

<HTML><BODY><P>查询成绩:<FONT size=1><P>输入学生的姓氏:<BR><FORM action=”byname2jsp”method=post name=form><INPUT type="text”name="name’’value=”王”><BRl><INPUT type=submit name=’’g..vaIHe=’’提交‘·></FORM></BODY></HTML>3)在JCreator中输入以下文档,并保存为byname2.jsp。

Java实验报告4

Java实验报告4
(2)如果将Clock类的声明public class Clock改成class Clock编译B.java时会报错,原因为packone.Clock在packone中不是公共的,无法从外部软件包中对其进行访问。
(3)如果将B.java去掉import语句,并在使用包中的类时带上完整的路径,运行时结果正确。
(4)把A.java程序的相关部分作如下修改进行测试,编译运行。
System.out.println("从类A中访问Clock hour="+c.hour);
System.out.println("从类A中访问Clock minute="+c.minute);
System.out.println("从类A中访问Clock second="+c.second);
·ClassNotFoundException:具有指定名字的类或接口没有被发现。
·CloneNotSupportedException:克隆一个没有实现Cloneable接口的类。
·IllegalAccessException:试图用给出了完整的路径信息的字符串加载一个类,但是当前正在执行的方法无法访问指定类,因为该类不是public类型或在另一个包中。
int n,a;String x;
BufferedReader keyin=
new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter an integer");
x=keyin.readLine();
n=Integer.parseInt(x);

java实验四实验报告

java实验四实验报告
}
}
编译:javac TwoThread.java
解释执行:java TwoThread
运行后结果:
1、用创建Thread类的子类的方法实现多线程:
源程序:
class FruitThread extends Thread
{
public FruitThread (String str)
{
super(str);
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(i+""+getName());
T2.start();
}
}
编译:javac C.java
解释执行:java RunThread
运行后结果:
c源程序:
class run1Thread implements Runnable
{
public void run()
{
System.out.println("This is Runnable");
outputClass(String s){
name=s;
}
public void run(){
for(int i=0;i<3;i++){
System.out.println(name);
Thread.yield();
}
}
}
class runThreads{
public static void main(String args[]){
try
{
sleep((int)(Math.random()*1000));

天津理工大学Java实验四实验报告

天津理工大学Java实验四实验报告

天津理⼯⼤学Java实验四实验报告天津理⼯⼤学计算机科学与⼯程学院实验报告2017 ⾄2018 学年第⼀学期附录(源程序清单)// FullQueueException类package Ex;public class FullQueueException extends IndexOutOfBoundsException { private static final long serialVersionUID = 1L;String ERROR_INFO;FullQueueException(String s){this.ERROR_INFO = new String(s);}public String toString(){return "FullQueueException" + ERROR_INFO;}}// EmptyQueueException类String ERROR_INFO; EmptyQueueException(String s){this.ERROR_INFO = new String(s);}public String toString(){return "EmptyQueueException" + ERROR_INFO; }}// CircleQueue类import java.util.Arrays;public class CircleQueue{private int DEFAULT_SIZE = 5;private int capacity;private Object[] elementData;private int front = 0;private int rear = 0;public CircleQueue(){capacity = DEFAULT_SIZE;elementData = new Object[capacity];}public CircleQueue(T element){this();elementData[0] = element;rear++;}public CircleQueue(T element, int initSize){this.capacity = initSize;elementData = new Object[capacity];rear++;}public int size(){if (isEmpty()){return 0;}return rear > front ? rear - front : capacity - (front - rear);}public void addBack(T element) throws FullQueueException { if (rear == front && elementData[front] != null){throw new FullQueueException("队列已满的异常");}elementData[rear++] = element;rear = rear == capacity ? 0 : rear;}public T removeFront() throws EmptyQueueException{if (isEmpty()){throw new EmptyQueueException("空队列异常");T oldValue = (T) elementData[front];elementData[front++] = null;front = front == capacity ? 0 : front;return oldValue;}public T element() throws EmptyQueueException{if (isEmpty()) {throw new EmptyQueueException("空队列异常");}public boolean isEmpty(){// rear==front且rear处的元素为nullreturn rear == front && elementData[rear] == null; }public void clear(){Arrays.fill(elementData, null);front = 0;rear = 0;}}// PrintJob类public class PrintJob{private String jobName;private int pages;public PrintJob(String sjN, int spg){this.jobName = new String(sjN);this.pages = spg;}public String getName(){return this.jobName;}public int getPages(){return this.pages;}}import java.util.Queue;private int sizeOfJobs;private int numberOfJobs;private int delayBetweenJobs;private String producerName;private Thread PrintThread = null;public Producer(int ss, int sn, int sd, String spn, Thread t) {this.sizeOfJobs = ss;this.numberOfJobs = sn;this.delayBetweenJobs = sd;this.producerName = new String(spn);this.PrintThread = t;}public void run() {for (int i = 0; i < this.numberOfJobs; i++) {PrintJob pj = new PrintJob(this.producerName + " #" + i, this.sizeOfJobs); try {Printer.getInstance().addJob(pj);Thread.sleep(this.delayBetweenJobs);} catch (InterruptedException e) {e.printStackTrace();} catch (FullQueueException e) {System.out.println("⽆法添加打印任务启动Printer" + e);}}}}//Printer类public class Printer implements Runnable{static private CircleQueue printQueue = new CircleQueue();static private boolean stateIsRunning = true;private static final Printer PRNTR_ONL Y = new Printer();static private boolean whileend = false;public static Printer getInstance() {return PRNTR_ONL Y;}public synchronized void halt(){if (Printer.stateIsRunning) {System.out.println("C: Print manager is halted.");Printer.stateIsRunning = false;}}public void addJob(PrintJob job) throws FullQueueException, InterruptedException { synchronized (printQueue){try{this.printQueue.addBack(job);}catch (FullQueueException e){try{printQueue.notify();printQueue.wait();}catch (InterruptedException e1){e1.printStackTrace();}}}System.out.println("[1]P: Adding job " + job.getName() + " to the queue");}private PrintJob getJob() throws EmptyQueueException {PrintJob p = null;while (p == null && stateIsRunning) {try {p = this.printQueue.element();Printer.printQueue.removeFront();} catch (EmptyQueueException e) {try {printQueue.notifyAll();printQueue.wait(500);} catch (InterruptedException e1) {e1.printStackTrace();}System.out.println("C: Waiting on a job to print." + stateIsRunning);}}return p;}}public void run() {System.out.println("C: Print manager is starting up.");while (stateIsRunning) {PrintJob pjob = null;try {pjob = this.getJob();System.out.println("[2]C:Starting job " + pjob.getName()); Thread.sleep(500 * pjob.getPages());System.out.println("[3]C:Completed job " + pjob.getName());} catch (EmptyQueueException e) {break;} catch (InterruptedException e) {e.printStackTrace();}}}//TestPrinter类public class TestPrinter{public static void main(String[] args) {Printer PRNT_P = Printer.getInstance();Thread THRD_P = new Thread(PRNT_P);THRD_P.setPriority(10);Producer pd1 = new Producer(5, 2, 5, "A", THRD_P); Producer pd2 = new Producer(5, 2, 5, "B", THRD_P); Producer pd3 = new Producer(5, 3, 5, "C", THRD_P); Thread thrd_A = new Thread(pd1);Thread thrd_B = new Thread(pd2);Thread thrd_C = new Thread(pd3);thrd_A.start();thrd_B.start();thrd_C.start();THRD_P.start();try {thrd_A.join();thrd_B.join();thrd_C.join();计算机科学与⼯程系}catch (InterruptedException e1){e1.printStackTrace();}try{Thread.sleep(10000);}catch (InterruptedException e){e.printStackTrace();PRNT_P.halt(); }}。

武汉科技大学 Java实验报告 实验四

武汉科技大学 Java实验报告  实验四
一个赋值数组组件的引用类型抛出一个ArrayStoreException当价值分配是不兼容的组件类型数组。
NoSuchFieldException
Signals that the class doesn't have a field of a specified name.
提示:在类中没有一个方法指定为该名称。
一个非凡的算术条件时抛出发生。例如,一个整数”除以零”抛出一个这个类的实例。
ArrayStoreException
An assignment to an array component of reference type throws an ArrayStoreException when the value to be assigned is not compatible with the component type of the array.
Thrown when a particular method cannot be found.
抛出它,当该方法不能被找到的时候。
Thrown to indicate that the application has attempted to convert a string to one of the numeric types, but that the string does not have the appropriate format.
信息科学与工程学院《Java程序设计》上机实验报告
专业班级姓名学号
实验时间指导教师成绩
实验名称
实验四异常类的定义及处理
实验目的
1)了解异常处理方法。
2)熟悉并掌握常见异常的捕获方法。
3)熟悉JDK中已经定义的若干异常类的层次结构。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.实验目的(1)学习类的成员变量和成员方法的声明格式(2)学习java对象的创建和调用(3)学习参数传递(4)学习类的私有成员的定义、访问方法已经共有成员的定义(5)理解类的构造方法、构造方法的调用(6)理解方法重载(7)掌握静态成员和非静态成员的访问方式(8)学习对象的赋值以及比较二.实验软件环境jdk1.6.0_18、windows 7三.实验内容(1)编写一个java程序,在程序中创建Student类的两个实例并访问他们的属性以及方法package .javaoo.class070120;//Student.javaclass Student{String name;int age;int Chinese;int Math;int English;int total(){return Chinese+Math+English;}int average(){return (Chinese+Math+English)/3;}}package .javaoo.class070120;//MyObject.javaclass MyObject{public static void main(String args[]){Student s1=new Student();="张三";s1.age=13;s1.Chinese=80;s1.Math=90;s1.English=85;System.out.println("你好,我叫"++","+"我今年"+s1.age+"岁");System.out.println("我的总分是"+s1.total());System.out.println("我的平均分是"+s1.average());Student s2=new Student();="李四";s2.age=12;s2.Chinese=80;s2.Math=90;s2.English=90;System.out.println("你好,我叫"++","+"我今年"+s1.age+"岁");System.out.println("我的总分是"+s2.total());System.out.println("我的平均分是"+s2.average());if(s1.total()>s2.total())System.out.println(+"的成绩好");elseif(s1.total()<s2.total())System.out.println(+"的成绩好");elseSystem.out.println(+"和"++"成绩一样好");}}(2)编写一个java程序,在程序中定义一个Person类,其中age属性是一个私有属性,并且范围在5~20之间package .javaoo.class070120;//Person.javaclass Person{String name;private int age;public boolean setAge(int newAge){if(5<=newAge&&newAge<=20){age=newAge;//如果5<=newAge<=20,则将newAge赋值给age属性并返回true;否则,返回falsereturn true;}else return false;}public int getAge(){return age; //返回age属性}public static void main(String args[]){Person s1=new Person();="张三";s1.setAge(25);//为学生s1的age属性设置年龄25,如果设置成功,显示s1的姓名和年龄,否则显示“年龄错误”int i=s1.getAge();if(i!=0){System.out.println(+" "+i);}else System.out.println("年龄错误");}}(3)编写一个java程序,在程序中定义一个Employee类,Employee类有四个构造方法,分别对不同的属性进行初始化,有一个setAge()方法能设置age属性,有一个getAge()方法返回age的值package .javaoo.class070120;//Employee.javaclass Employee{private String name;private int age;private double salary;public Employee(String newName,int newAge,double newSalary){this(newAge,newSalary);//[代码1]要求调用两个参数的构造方法,传入参数newAge 和newSalarySystem.out.println("三个参数的构造方法被调用");name=newName;}public Employee(int newAge,double newSalary){this(newSalary);//[代码2]要求调用一个参数的构造方法,传入参数newSalarySystem.out.println("两个参数的构造方法被调用");age=newAge;}public Employee(double newSalary){this.getAge();//[代码3]要求调用没有参数的构造方法System.out.println("没有参数的构造方法被调用");}void setAge(int newAge){int age=0;age=newAge;//[代码4]设置age属性的值为newAge}int getAge(){return age;}public static void main(String args[]){Employee s1=new Employee("李四",30,8000);s1.setAge(31);System.out.println("年龄是"+s1.getAge());}}(4)编写一个java程序,在程序中定义一个MyPlus类,MyPlus类有三个plus()方法,分别对不同参数进行求和package .javaoo.class070120;//MyPlus.javaclass 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));}}(5)编写一个java程序,在程序中定义一个Ca类,Ca类有静态成员和非静态成员,再定义一个Cb类,在Cb类中创建Ca类的对象package .javaoo.class070120;//Ca.javaclass Ca{int a;static int b;//[代码1]定义一个静态整形属性bpublic static void m1(){Ca s1=new Ca();s1.a=10;b=10;}public void m2(){a=5;b=5;}public static void m3(){m1();Ca s1=new Ca();s1.m2();}}class Cb{public static void main(String args[]){Ca s1=new Ca();Ca s2=new Ca();Ca.b=5;s1.b=6;s2.b=7;System.out.println("Ca.b="+Ca.b);System.out.println("s1.b="+s1.b);System.out.println("s2.b="+s2.b);}}(6)编写java程序,中定义一个StudentA类,生成StudentA类两个对象,赋值,比较package .javaoo.class070120;//StudentA.javapublic class StudentA{String strName;public static void main(String args[]){StudentA a=new StudentA();a.setName("张三");StudentA b=a;b.setName("李四");StudentA c=new StudentA();c.setName("王五");System.out.println("a的名字是"+a.getName());System.out.println("b的名字是"+b.getName());System.out.println("c的名字是"+c.getName());if(a==b){System.out.println("a与b相等");}else System.out.println("a与b不相等");if(a==c){System.out.println("a与c相等");}else System.out.println("a与c不相等");}public void setName(String name){strName=name;}public String getName(){return strName;}}四.实验的结果及分析五.实验心得体会通过本章节的学习,对于本章节所要学习的目标都初步达到了。

相关文档
最新文档