搜档网
当前位置:搜档网 › JAVA实验报告心得(20200623060159)

JAVA实验报告心得(20200623060159)

JAVA实验报告心得(20200623060159)
JAVA实验报告心得(20200623060159)

北京联合大学信息学院

“面向对象程序设计”课

程上机实验报告

题目:java上机实验心得体会

姓名(学号) :专业:计算机科学与技术

编制时间:2012年12 月19日

版本: 1.0.0

指导教师:北京联合大学-信息学院编制

实验1 熟悉java 运行环境

实验目的:熟悉jdk 环境和操作,编写简单的java 应用程序。心得体会:在该实验中,我碰到的问题是jdk 环境变量的设置。解决方法是通过查阅资料书和网上搜索相关解决方法及同学的有力帮助。

实验2 选择语句练习

实验目的:正确理解并能够熟练操作和使用java 的if 和switch 语句。心得体会:我个人感觉有了c 的编程基础,if 和switch 这些简单的流程控制语句运用起来比较轻松,实现简单的逻辑运算也跟c 非常相近,所以上手比较快。但是在这次程序中,首次涉及到了java 程序的数据输入,与c 区别很大。但经过老师的讲解和查阅相关资料,基本明白相关的使用规则和注意事项。在第二个小题中还涉及到了charat ()方法,经查阅jdk 文档,知道charat() 方法返回一个位于提供给它的参数索引处的字符,如: str.chatat(0)检索str 中的第一个字符,str.charat(str.length()-1) 检索最后一个字符。我运用此方法解决了比较字符串间首字母异同的问题。

实验3 迭代练习

实验4 方法的实现练习实验目的:声明、定义和调用方法,理解实参和形参的含义。心得体会:在该实验中,我掌握如何写方法、调用方法,并掌握如何向方法中传递信息和从方法中返回信息。方法声明为非void (构造方法除外)则需要用return 语句返回一个相应类型的返回值。

实验5 简单类型数组练习实验目的:学习创建简单类型的数组,并能用循环语句处理数组。心得体会:通过该实验,我学会了如何让建立简单类型的数组,并掌握了将数组作为方法的传入参数和返回值。在该实验中,遇到的问题主要是如何将一个连续的多位数在存入数组时,每个数组元素只对应改多位数的一个组成数。我解决的方法如下:

for(i=0; i<6; i++){

n[i] = aa%10; //aa%10 的结果是aa 的末尾数,将多位数aa 的末尾数赋给a[i] aa =

(int)aa/10; // 对aa/10 的结果强制取整,去掉了aa 的末尾数,以便对下一位数的存数。

}

实验6 类和对象的练习

实验目的:正确理解并能够熟练操作和使用java 的类、对象和方法。心得体会:我学会了如何建立类和对象,分别输出其中包含的成员值;以及分别引用各方法,实现不同的操作。在该程序中,我进一步了解了如何定义成员方法和成员属性以及相关方法的调用。特别是我掌握了利用构造方法对成员属性赋初始值。值得一提的是,我在相应的程序中运用了touppercase 方法,经查看jdk 文档知道该方法的作用是返回一个所有字母都被转化为大写字母字符串。

实验7 类的实现

实验目的:使用统一建模语言( uml )设计类,并实现类。 心得体会:通过该实验,我学会了使用

public 、 private 控制访问及其访问权限;体会 了 static 关键字的作用。 并对 java 程序中的类及面向对象

的编程思想有了更进一步的了解。

实验 8 继承的练习 实验目的:正确理解并能够熟练操作和使用 java 类的继承关系。 心得体会: 理解了继承的含义, 并使用 uml 符号设计了继承结构; 掌握了用 java 实现继

承关系;学会了区分方法重写和方法重载; 并深入理解了 abstract 和 final 修饰符的作用。 用 final 标记的变量只能赋值一次,标记的类不可被继承,方法不可被子类重写。用关键字 extends 表继承,例如子类 a 继承了父类 b 则可写作 class a extends b

。在这些概念性知

碰到了输入年月日计算车龄的问题, 我的解决办法如下:

( int)time/10000 是将 8 位数表示的生产年月日强制 将当前年月日

转换为年

age = a2 - a1 +1;// 计算

车龄 return age;

实验 9 抽象类、接口练习

实验目的:综合运用接口,类的知识。 心得体会:在该实验中,我掌握了接口定义,以及类实现接口。接口用 interface 关键 字定义,在接口中,可以用 abstract 是修饰方法的,也可以去掉 abstract ,编译时会默认 为抽象方法。 类实现接口可用 implements 表示,例如 class circle implements shape 表示, circle 类实现了接口 shape 。

实验 10 多态练习 实验目的:理解并使用面向对象的特征:多态。

心得体会:在实验 10 中,我基本掌握了多态的句柄、多态方法的定义。在改程序中,我 遇到了要求随机产生一个图形的难题,通过网上查阅资料,利用系统函数 math.random() 经 一系列的运算处理来随机产生一个图形解决了该难题,具体的程序如下:

public static void main(string[] args) {

} circle cir = new circle(9); square squ = new square(4); shape shape;

int r; r = (int)(math.random()*2);//

用 math.random() 方法产生 0.00 到 if(r == 0)

shape = cir; else shape = squ; shape.testshape(shape); //

同一条语句产生不同的

执行结果,多态 1.00 的随机数 ,乘 2取整后非 0即 1 性。

实验 11 多线程处理

实验目的:理解线程的基本概念。

心得体会: 通过该实验, 基本能够理解线程的运行了。 学会调用 thread 类中的系统函数

setname() 是设置线程名字, start() 是开辟一条新线程, 是获得正在执行的线程的名字, 是 thread 类

中 返 回 该 线 程 的 标 识 符 的 方 法 , 是 thread 类中返回线

程的优先级的方法。

心得体会:对于该实验,由于比较难,只是基本掌握了文件读写的方法和规则,还有待

识点弄明白后, 在解决实际问题时,

public int age(int year) { int age;

int a1 = (int)(time/10000); //

转换成四位数表示的年

}

int a2 = (int)(year/10000); //

以及掌握这些函数的作用是难点,

thread.currentthread().getname() thread.currentthread().getid() thread.currentthread().getpriority()

实验 12 i/o 及文件处理

实验目的:掌握并使用

java 中的 i/o 和文件。

17 周java 实训时继续攻坚克难。

结语:在这一系列的实验中,我基本掌握了java 的编程规则、知识要点和一些小技巧,特别是对面向对象的编程思想和风格有了进一步的认识和体会。同时,因正确的编出程序而带来的成就感让我对编程更加感兴趣。对于在这些实验过程中,请教老师、同学互助、查阅资料等基本的学习方式,使我更加领悟到集体和团队的力量,也树立了敢于攻坚的信心。篇二:java 实训心得

java 实训心得

在上学期的最后一周和本学期的第一周,我和同组的学员在学校机房进行了java 暑期实训, 现在已经结束了。

回首上学期的java 学习,重点还是在学习概念等一些常识性的东西,application 应用程序和applet 小程序,它的开发工具、数据类型、变量、接口、输入输出流等。学会分析异常,抛出异常,后期主要是小程序运用,gui 界面设计和事件。我觉得这两种程序结构有很大的不同,不管是体系结构还是运行方式,都有很大的区别,而我主要偏向于小程序的学习。因为我感觉它实用性比较大,可以做出很多不错的游戏、运用程序等,而且它比较灵活。当然学知识不能仅凭自己的爱好和一时兴趣,要一步一个脚印、认认真真、踏踏实实,理论与实践相结合。在掌握课本实例和内容之后,要有一定的扩展阅读和课外学习,充分全面的了解java 的应用和扩展运用。在我所学的语言当中,我自认为java 是一门比较强大的面向对

象编程语言。不仅仅因为它的跨平台性,更多的是因为它的灵活多变和实用性,而且它比较的经典和强悍。

这次实训,面对老师布置的任务,一开始有些慌张和无措。不过,事后我首先想到这和课本上的某些知识具有结合点,回忆和分析了老师教过的算法和具体实施方法,并综合考虑了其他的方面。在编写时,一个小小的符号、一个常量变量的设定,这都无不考量着我的细心和严谨。所以学习java ,不仅对我们以后学习其他语言有很大

的好处,而且也让我们知道了和理解了作为一个编程人员首先应具有的良好心理素质,那就是冷静思考和专心致志。

在此次实训中,我意识到一个好的编程人员要善于沟通和团结拼搏。实训结束后,我觉得要学好一门计算机语言必须牢记以下几点:

1. 态度第一

2. 兴趣是关键

3. 敢于挑战

4. 不懈追求

实训结束了,大家都有一种解脱的感觉。当然我想自己更多的是兴奋和一点点的成就感。现在我觉得,学习java 要不断的复习和运用,做到举一反三,将所学知识充分融入到平时的学习生活中去,从而为以后的工作打好坚实的基础。感谢学校和老师能够为我们提供这次机会,让我们更好的掌握和了解java 这门语言。

通过这次实训,我真的从中学到了很多东西。我对这个介于人类与非人类之间的计算机编程语言有了较上学期更进一步的认识。其间开心过、郁闷过、无奈过、彷徨过,, 随着实训的圆满成功与实验报告的顺利完成,有点微微的自豪感使人难忘。至于我做的程序,还不是很完善,所以我将一直去完善它,不断地学习下去。伴随着学习的深入,我发现高深的东西还有很多很多,等待着我自己去发掘。对于java 语言,我会更加努力。

2011/9/10 篇三:java 实验报告

java 程序设计实验报告

题目:研究java 中的for 循环

院(系)

专业信息与计算科学

班级101001 班

姓名

学号101001113

导师

2012 年11 月26 日

for 循环程序设计

【实验目的】通过对for 循环学习,了解java 中的循环语句的应用和它们的用法。

【实验原理】for(表达式1 ;表达式2;表达式3){ // 循环体

}

表达式1 一般是一个赋值语句,它用来给循环控制变量赋初值;表达式2 是一个布尔类型的表达式,它决定什么时候退出循环;表达式3 一般用来修改循环变量,控制变量每循环一次后按什么方式变化。这三个部分之间用“;”隔开。

【实验要求】windows 操作系统(32 位),安装jdk1.6 ,eclipse 运行环境

【实验步骤】

(2)按给定的题目写出符合语法分析方法,按给定的题目给出语法分析方法的思想及分析表设计。

(3)按给定的题目给出中间代码序列的结构设计。对于for 循环的具体操作,见程序

test1 (图1)

图1 for 循环语句

(4)探究if 与for 循环嵌套,及其其他循环语句的使用,与for 循环使用的差别,见程序(图2 图3)

图2 if 与for 嵌套

图3 switch 循环

【问题与解决方法】(1)如图1 和2,这个两个程序中,主要遇到的问题在for 后面的(表达式1;表达式2;表达式3)里面表示的书写,以及怎样把if 嵌套在for 语句中。(2)如图3,这个程序中,将其它循环使用的方法搞混。

解决方法:通过查阅资料,熟记了几个循环的使用方法,及其注意事项,将错误的一一修改。

【实验总结】通过这个实验,我已熟悉掌握了for 等循环语句的用法,for 它既可以单独用,也可以嵌套在for 等循环语句中,增加了程序可读行,方便编程,为以后的学习java 起到了一定铺垫作用,不过还需要多练习,才能熟能生巧,为以后java 编程起到一定作用。参考文献:

1. 郎波.java 语言程序设计. (第二版).- 北京:清华大学出版社,2010.9 篇四:最新java 实训报告总结心得

一、实训项目

简易记事本

二、实训目的和要求

本次实训是对前面学过的所有面向对象的编程思想以及java web 编程方法的一个总结、回顾和实践,因此,开始设计前学生一定要先回顾以前所学的内容,明确本次作业设计所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。通过编写采用jsp+servlet+javabean 技术框架的应用系统综合实例,以掌握java web 开发技术。

具体要求有以下几点:

1. 问题的描述与程序将要实现的具体功能。

2. 程序功能实现的具体设计思路或框架,并检查流程设计。

3. 代码实现。

4. 设计小结。

三、实训项目的开发环境和所使用的技术

基于j2se 基础,利用myeclipse 8.5 以上版本的集成开发环境完成实训项目,代码的可维护性好,有必要的注释和相应的文档。

四、实训地点、日程、分组情况:实训地点:4 栋303 机房日程:

第一阶段:1. 班级分组,选定课题,查阅相关资料半天

2. 划分模块、小组成员分工半天

3. 利用case 工具进行系统设计和分析,并编制源程序5 天第二阶段:上机调试,修

改、调试、完善系统2 第三阶段:撰写、上交课程设计报告,上交课程设计作品源程序(每人

五、程序分析功能模块说明弹出

菜单

for(int f=0;f<4;f++) 改变字号:

public void zihao()

{

font f=new font(,font.plain,20); jta.setfont(f);}

设置字型

public void ziti()

{

font f=new font( 宋体,font.plain,15); 改变字体颜色

public void font()

{

jcolorchooser jcolor=new jcolorchooser();

color fcolor=jta.getforeground();

jta.setforeground( jcolor.showdialog(jta, 选择字体颜色,fcolor)); } 自动换行

public void action(){ jta.setlinewrap(true);// 激活自动换行功能实现接口

public void actionperformed(actionevent e )

{ 创建保存文件对话框

public void savefile() { 创建打开文件对话框

private void openfile()

{

jfilechooser filechoose=new jfilechooser(); result=filechoose.showopendialog(null); if(result==jfilechooser.approve_option)

界面友好,天

1 份)

2 天

int

file } { try{

filereader fr=new filereader(file); int context=new char[len];

fr.read(context,0,len); string(context)); jfilechooser

filechoose=new

fw.write(jta.gettext()); fw.close(); }catch(exception e){system.out.println( 保存

文件失败! );} }else return; }catch(exception e){system.out.println(

打开文件失 败! );} }else return;

六、程序设计及实现

1 、实现弹出菜单( jpopupmenu )

2 、设置字型,字体大小,字体颜色

3 、实现自动换行

七、实训总结

通过 3 天的实训, 虽然实训的时间不长, 但是总体上收获是很大的, 我们的 java 课程学

到的只是 java 和皮毛, 一开始我还没有信心完成。 我仔细看了书上的代码之后。 对计事本有 了一个大体的了解,在初训的实候知道自己应该做一个什么样的计事本了,在实训的过程中

也遇到了不少困难,通过查 api 文档和看书,解决了问题,在写到字符的查找的替换时后, 用到了上课时学到的知识,对字体的风格的保存里面的颜色分离和还原方法,是通过查 api 文档获得的 ,现在我所写的计事本只实现在一些基本功能。 简单的复制粘贴, 字体风格的设置, 还有就是查找和替换功能以及一些字体风格的保存 . 对文件的操作基本都用到了。

在实现记事本的功能过程中, 也不是很顺利, 基本的文件读写和保存文档的复制、 粘贴、 删除等功能还比较容易实现,但如何改变字体、字体颜色和背景颜色,就比较麻烦了,要实 现字体颜色和背景颜色,首先要调用系统的调色板,再进行设置。但如何调用系统调色板? 我是通过查阅帮助文档来找到其调用方法的。 像自动换行、 设置字体等都是通过方法来调用, 给相关事件加上监听,在进行响应事件。整个程序中方法才是最关键的,也是最困难的。所 以像查找、 替换、 转到几个功能我都不知道用什么方法, 也由于时间有限, 没有完成其功能。 总体的感觉是对 java 有了一个全新的认识, 现在感觉用 java 做小的图形用户程序有些缺陷, 但是在其的应用方面。尤其是有网络方面的应用,在整个实训我也尝试过做一个小的画图软 件。但是由于时间关系还有一个是自身的知识的欠缺,最终这个事情被搁浅下来了。最后还 是进行计事本的编写。由于在做画图软件时花了不了时间,所以现在的计事本的功能不是很 全,如果有更多的时间,我会把这个记事体再完善一下,再把画图软件也做出来。实训的时 间不长, 但是我会在课外把它们的功能完善。 然后再学习一下 java 和网络的编程, 体验 java 的前沿技术。

在学习的过程中也体会到,遇到问题也要请教。不然的话自己一个人去做的话会花很多 的时间,我在做这个记事本的时间,其中也问到过许多问题,通过同学的帮助下解决了,提 高了程序的开发进程。其他的同学有问题的话我也是给他们尽量解决。我认为学习知识的过 程当中就应该是相互学习相互进步的。

虽然学习 java 的路还很找,但我会继续走下去。

file=filechoose.getselectedfile(); len=(int)file.length(); char[] fr.close(); jta.settext(new jfilechooser();

int

if(result==jfilechooser.approve_option)

result=filechoose.showsavedialog(null);

} { try{ file

file=filechoose.getselectedfile();

filewriter fw=new filewriter(file);

JAVA学生信息管理系统实验报告

JA V A程序设计实验报告 学号: 姓名: 班级: 实验、Java课程设计--------学生信息管理系统

一、实验目的 1.掌握Java基本语法 2.理解面向对象编程特点 3.理解Java I/O编程 4.掌握Java图形界面编程 5.掌握Java与不同数据库进行连接 二、预习内容 Java的基本语法知识、类和对象、Java Swing图形界面编程、Java I/O处理以及Java与数据库连接操作 三、实验设备与环境 通过局域网互联,安装Windows 2000/XP操作系统环境的JDK 1.6,my eclipse 或者EditPlus编程工具。并安装MySQL数据库 四、实验内容 编写并调试运行Java程序,进行设计,掌握Java开发的基础。 五、实验任务 设计学生信息管理系统。要求包括 1. 登陆模块:设立超级管理员权限,用户可以根据不同的权限登陆系统,超级管理员可以对学生信息进行增、删、改、查操作。而普通用户只可以查找学生信息。 2. 包括学生添加信息模块、学生信息删除模块、学生信息修改模块和学生信息查询模块 3.对于管理员,可以对管理员进行添加、删除以及修改密码等操作。 六、实验报告(要求独立完成参考程序的代码、编译、调试与运行) 1、程序清单: 1.1程序模块清单 package Pan; import java.awt.event.ItemListener; import javax.swing.*; import https://www.sodocs.net/doc/9e19043473.html,ponent;

import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.InputEvent; import java.awt.event.ItemListener; import java.awt.event.KeyEvent; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.util.*; import java.awt.Color; import java.text.DecimalFormat; import java.sql.*; import java.sql.Date; import java.awt.*; import java.util.Vector; public class Res { /** * @param args */ public static void main(String[] args) {

操作系统实验报告--实验一--进程管理

实验一进程管理 一、目的 进程调度是处理机管理的核心内容。本实验要求编写和调试一个简单的进程调度程序。通过本实验加深理解有关进程控制块、进程队列的概念,并体会和了解进程调度算法的具体实施办法。 二、实验内容及要求 1、设计进程控制块PCB的结构(PCB结构通常包括以下信息:进程名(进程ID)、进程优先数、轮转时间片、进程所占用的CPU时间、进程的状态、当前队列指针等。可根据实验的不同,PCB结构的内容可以作适当的增删)。为了便于处理,程序中的某进程运行时间以时间片为单位计算。各进程的轮转时间数以及进程需运行的时间片数的初始值均由用户给定。 2、系统资源(r1…r w),共有w类,每类数目为r1…r w。随机产生n进程P i(id,s(j,k),t),0<=i<=n,0<=j<=m,0<=k<=dt为总运行时间,在运行过程中,会随机申请新的资源。 3、每个进程可有三个状态(即就绪状态W、运行状态R、等待或阻塞状态B),并假设初始状态为就绪状态。建立进程就绪队列。 4、编制进程调度算法:时间片轮转调度算法 本程序用该算法对n个进程进行调度,进程每执行一次,CPU时间片数加1,进程还需要的时间片数减1。在调度算法中,采用固定时间片(即:每执行一次进程,该进程的执行时间片数为已执行了1个单位),这时,CPU时间片数加1,进程还需要的时间片数减1,并排列到就绪队列的尾上。 三、实验环境 操作系统环境:Windows系统。 编程语言:C#。 四、实验思路和设计 1、程序流程图

2、主要程序代码 //PCB结构体 struct pcb { public int id; //进程ID public int ra; //所需资源A的数量 public int rb; //所需资源B的数量 public int rc; //所需资源C的数量 public int ntime; //所需的时间片个数 public int rtime; //已经运行的时间片个数 public char state; //进程状态,W(等待)、R(运行)、B(阻塞) //public int next; } ArrayList hready = new ArrayList(); ArrayList hblock = new ArrayList(); Random random = new Random(); //ArrayList p = new ArrayList(); int m, n, r, a,a1, b,b1, c,c1, h = 0, i = 1, time1Inteval;//m为要模拟的进程个数,n为初始化进程个数 //r为可随机产生的进程数(r=m-n) //a,b,c分别为A,B,C三类资源的总量 //i为进城计数,i=1…n //h为运行的时间片次数,time1Inteval为时间片大小(毫秒) //对进程进行初始化,建立就绪数组、阻塞数组。 public void input()//对进程进行初始化,建立就绪队列、阻塞队列 { m = int.Parse(textBox4.Text); n = int.Parse(textBox5.Text); a = int.Parse(textBox6.Text); b = int.Parse(textBox7.Text); c = int.Parse(textBox8.Text); a1 = a; b1 = b; c1 = c; r = m - n; time1Inteval = int.Parse(textBox9.Text); timer1.Interval = time1Inteval; for (i = 1; i <= n; i++) { pcb jincheng = new pcb(); jincheng.id = i; jincheng.ra = (random.Next(a) + 1); jincheng.rb = (random.Next(b) + 1); jincheng.rc = (random.Next(c) + 1); jincheng.ntime = (random.Next(1, 5)); jincheng.rtime = 0;

操作系统实验报告

操作系统实验报告 ' 学号: 姓名: 指导老师: 完成日期: ~

目录 实验一 (1) 实验二 (2) 实验三 (7) 实验四 (10) 实验五 (15) 实验六 (18) 实验七 (22) \

实验一 UNIX/LINUX入门 一、实验目的 了解 UNIX/LINUX 运行环境,熟悉UNIX/LINUX 的常用基本命令,熟悉和掌握UNIX/LINUX 下c 语言程序的编写、编译、调试和运行方法。 二、实验内容 熟悉 UNIX/LINUX 的常用基本命令如ls、who、pwd、ps 等。 练习 UNIX/LINUX的文本行编辑器vi 的使用方法 熟悉 UNIX/LINUX 下c 语言编译器cc/gcc 的使用方法。用vi 编写一个简单的显示“Hello,World!”c 语言程序,用gcc 编译并观察编译后的结果,然后运行它。 三、实验要求 按照要求编写程序,放在相应的目录中,编译成功后执行,并按照要求分析执行结果,并写出实验报告。 四、实验程序 #include <> #include <> int main() { printf ("Hello World!\n"); return 0; } 五、实验感想 通过第一次室验,我了解 UNIX/LINUX 运行环境,熟悉了UNIX/LINUX 的常用基本命令,熟悉和掌握了UNIX/LINUX 下c 语言程序的编写、编译、调试和运行方法。

实验二进程管理 一、实验目的 加深对进程概念的理解,明确进程与程序的区别;进一步认识并发执行的实质。 二、实验内容 (1)进程创建 编写一段程序,使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示“a“;子进程分别显示字符”b“和字符“c”。试观察记录屏幕上的显示结果,并分析原因。 (2)进程控制 修改已编写的程序,将每一个进程输出一个字符改为每一个进程输出一句话,再观察程序执行时屏幕上出现的现象,并分析原因。 (3)进程的管道通信 编写程序实现进程的管道通信。使用系统调用pipe()建立一个管道,二个子进程P1 和P2 分别向管道各写一句话: Child 1 is sending a message! Child 2 is sending a message! 父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,再接收P2)。 三、实验要求 按照要求编写程序,放在相应的目录中,编译成功后执行,并按照要求分析执行结果,并写出实验报告。 四、实验设计 1、功能设计 (1)进程创建 使用fork()创建两个子进程,父进程等待两个子进程执行完再运行。 (2)进程控制 使用fork()创建两个子进程,父进程等待两个子进程分别输出一句话再运行。 (3)进程的管道通信 先创建子进程1,向管道写入一句话,子进程1结束后创建子进程2,向管道写入一句话,最后父进程从管道中读出。 2、数据结构 子进程和管道。 3、程序框图

java实验报告总结

java实验报告总结 导语:在这次实训里,让我知道还有很多地方的不足,还有许多的技术等着我去摸索,等着我去学习。下面是由小编为你整理的java实验报告总结,欢迎大家阅读。 java实验报告总结篇一伴随着新年钟声的到来,我不知道我是否是应该高兴还是悲伤。因为伴随自己三个月的华迪实训即将结束。转眼之间三个月的华迪实训就这样在忙碌中过去了。通过此次短暂的java开发习,回顾一下自己这三个月的每一天,觉得过的十分的充实,每天都有一堆忙不完的事。因为你每天想起的第一件事情就是完成自己的项目模块,哪些地方不够,哪些需要修改。渐渐的发觉,自己对自己所担任角色的认知:从原先的学生到现在“程序员”的转变。“任何一个初具规模的软件都是要团队来配合的”这是我一向的认知。因为你再全能程序员也有出纰漏的地方,你程序写的再好,那也只是你一个人的程序。 因为对于程序来说,可读性、可理解性是一项衡量它是否优秀的一个标准。所以就有了我们6位成员的项目组。在项目组中,我担任组员这一角色,这相当于一个正规项目的“项目开发人员”,感觉自己身上的担子挺重,因为要配合其他组员的进度并完成自己任务从而使得项目能够成功地,完整地把它应有的功能实现。对于项目中遇到的困难,我觉得那就是经验不足,会遇到很多问题但也培养了我们上网搜

索查询,咨询老师同学的良好习惯,让我相信任何困难都有被解决的一天。 所以从整个项目来说,自己在编码上遇到的太棘手的问题都是大家集体解决。但是总的来说,这次课程设计对我很有帮助,让我获益匪浅,期间时间虽短但是也学到了不少的知识。在这次实训过程中,我发现平时学习的知识与实践环节所用到的有一定的差距,往往我觉得自己掌握的很好或者自认为熟练的技术却在此次实践环节中往往出问题,书本上的知识只提供方法的借鉴,实践中自己必须摸索出适合具体工作的方法,这一切都离不开钻研精神与勤学好问的精神。 总的来说,这次培训效果不错,对自己有一定的提升,这完全不同与学校的学习,因为它更加贴近工作,针对以后工作的内容作了很多实例的练习与工具的使用,为我们更快的加入工作提供的很好的前提。并且在这次实训里,让我知道还有很多地方的不足,还有许多的技术等着我去摸索,等着我去学习。最后,感谢公司的几位老师辛勤的工作,我们的开心来自你们的热心与关心。祝你们工作顺利。 java实验报告总结篇二此次只实习了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对

操作系统实验报告java

操作系统实验报告 院系: 专业: 班级: 学号: : 指导老师:

进程调度的模拟与存管理 一、实验目的 在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就续进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。实验模拟实现处理机调度,以加深了解处理机调度的工作,并体会优先级和时间片轮转调度算法的具体实施方法。帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 二、实验要求 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度。 4、可随时增加进程; 5、规定道数,设置后备队列和挂起状态。若存中进程少于规定道数,可自 动从后备队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能 用于将指定挂起进程解挂入就绪队列。 6、每次调度后,显示各进程状态。 7、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目容:起址、长度、状态(未分/空表目) 8、结合以上实验,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,

PCB指针} 9、采用最先适应算法分配主存空间; 10、进程完成后,回收主存,并与相邻空闲分区合并。 11、采用图形界面; 三、实验容 选择一个调度算法,实现处理机调度。 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 3、主存储器空间的分配和回收。在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。 四、实验原理 该模拟系统采用java语言实现,要实现的功能有新建进程、进程调度、挂起进程、解挂进程、删除进程,道数和时间片大小可以由用户自己调整,有两种调度策略:按优先权调度和按时间片轮转调度。每个进程可能有5种状态:新建(new)、就绪(ready)、运行(running)、阻塞(waiting)、挂起(suspend)。每个状态都有一个队列用来存放处于该状态的进程,不同的调度策略采用不同的队列实现。当创建进程时,如果存中的进程数还没达到规定道数,则将新建进程插入就绪队列,如果存中进程数已经达到规定道数,则插到后备队列,后备队列中的进程的状态为new。CPU每次调度时都从就绪队列中取进程,在进程执行过程中如果下一个操作时IO操作,则将进程插入到waiting队列。在系统运行过程中可以执行进程挂起操作,但执行的挂起操作时系统自动暂停运行,在弹出窗口选

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科0901 学号: 0909090310

指导老师:宋虹

目录 课程设计内容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------6 文件系统的层次结构和功能模块 ---------------------6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录-------------------------------------------------- 12

课程设计内容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在内存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全 可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

电大操作系统本科实验报告

中央广播电视大学计算机科学与技术专业操作系统(本科) 实验报告 院系:_______________ 班级:________ 学生姓名:_____________ 学号:______ 指导教师:________ 完成日期2015年月日

一、实验题目: Linux应用及shell编程 二、实验目的和要求: 目的 1.掌握Linux一般命令格式和常用命令。 2.学会使用vi编辑器建立、编辑文本文件。 3.了解shell的作用和主要分类。 4.学会bash脚本的建立和执行方式。 5.理解bash的基本语法。 6.学会编写简单的shell脚本。 要求 1.登录进入系统,修改个人密码。 2.使用简单命令:date,cal,who,echo,clear等,了解Linux命令格式。 3.进入vi。建立一个文件,如。进入插入方式,输入一个C语言程序的各行内容,故意制造几处错误。最后,将该文件存盘。回到shell状态下。 4.运行,编译该文件,会发现错误提示。理解其含义。 5.利用vi建立一个脚本文件,其中包括date,cal,pwd,ls等常用命令。然后以不同方式执行该脚本。 6.对主教材第2章中的适当例题进行编辑,然后执行。从而体会通配符、引号、输入输出重定向符、成组命令的作用;能正确使用自定义变量、位置参数、环境变量、输入/输出命令;能利用if语句、while语句、for语句和函数编写简单的脚本。 三、实验内容: 1.正确地登录和退出系统。 2.熟悉使用ls,cp,cat,等常用命令。 3.进入和退出vi。利用文本插入方式建立一个文件。

5.建立简单shell脚本并执行它。 四、实验技术和方法: Linux中各种脚本语言 五、实验环境: 虚拟机,ubuntuserver版,shell 六、实验步骤和结果: 1.正确地登录和退出系统。 使用exit命令退出系统 2.熟悉使用cat,cd,cp,ls,mor,rm,vi,who等常用命令。 2.使用vi编写 按:wq存储,并退出 5.建立shell脚本并执行它。 使用VI创建ex1文件,内容含三条命令date/pwd/cd.. 七、实验结果分析: 无 实训3 一、实验题目: 进程管理 二、实验目的和要求: 目的 1.加深对进程概念的理解,明确它与程序的区别,突出理解其动态性特征。

JAVAWEB实训心得体会

j s p+s e r v l e t+m y s q l论坛项目实训总结 实训人:程路峰学号 通过为期10天的实训,我学习了很多关于java web的知识。在老师的正确指导下,顺利的完成了我的实训内容。在此,也有同学的帮助,在他们的帮助下我也受益匪浅。最终,能顺利完成实训的任务也很高兴。 在实训生活中,我了解开发项目的需求、设计、实现、确认以及维护等活动整个过程,让自己开始懂得 一点软件工程的知识点。 首先,了解需求分析的重要性,比如:需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一 个 for linux 的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然 的认为是开发 for windows 的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是 欲哭无泪了,恨不得找块豆腐一头撞死。所以,需求分析是成功的第一步,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。 然后呢?确实客户的需求的以后我们要做什么呢,那当然是设计和分析。此阶段主要根据需求分析的 结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。 接下来是代码实现,此阶段是将网站项目设计的结果转换成计算机可运行的程序代码,我们这个项目为 4个模块,1.界面,2.逻辑层。3实现层。4.数据库及使用说明文档,分别为4个小组成员完成。这阶段我学到很多编程的思想,如: 分层思想、mvc、三大架构的整合、dao 的编写。 编号程序之后就是软件测试了,此时在软件设计完成后要经过严密的测试,以发现软件在整个设计过程 中存在的问题并加以纠正。由于时间有限,我们测试是简单的使用一下每一个功能。 在编写代码时,由于自己技术知识水平不广,常常遇到技术难题;还有自己没有良好的编程习惯,不注释,有时连自己也看懵了;编程的结构不好,维修和修改代码是很慢。这次实训让我意识到了自己做为计算 机软件工程专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄外,还必须 具备良好的心理素质,使自己在以后的途中无论经历什么样的困难,都立于不败之地。"纸上得来终觉浅, 绝知此事要躬行!"在这短短的时间里,让我深深的感觉到自己在实际应用中所学专业知识的匮乏。让我真 真领悟到"学无止境"这句话的涵义。而所学的,都是课本上没有而对我们又非常实用的东西,这又给我们的实训增加了浓墨淡采的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。 在这次实训中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中各成员合 作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每个成员的意见,使我们的组合达到更加完美。实训过程中,除 了要专业知识,包括人际交往,沟通方式及相关礼节方面的内容,对于团队开发来说,团结一致使我深有体会。团队的合作 注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅 加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经历,这也是实训最大的收获。 这次实训带给我太多的感触,它让我知道工作上的辛苦,事业途中的艰辛。让我知道了实际的工作并不像在学校学习那样轻松。让我学到了很多课堂上更本学不到的东西,仿佛自己一下子成熟了,懂得了做人做事的 道理,也懂得了学习的意义,时间的宝贵,人生的真谛。明白人世间一生不可能都是一帆风顺的,只要 勇敢去面对人生中的每个驿站!这让我清楚地感到了自己肩上的重任,看清了自己的人生方向,也让我认识 到了做软件应支持仔细认真的工作态度,要有一种平和的心态和不耻下问的精神,不管遇到什么事都要总代 表地去思考,多听别人的建议,不要太过急燥。

实时操作系统报告

实时操作系统课程实验报告 专业:通信1001 学号:3100601025 姓名:陈治州 完成时间:2013年6月11日

实验简易电饭煲的模拟 一.实验目的: 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,基于多任务的模式的编程方法。锻炼综合应用多任务机制,任务间的通信机制,内存管理等的能力。 二.实验要求: 1.按“S”开机,系统进入待机状态,时间区域显示当前北京时间,默认模式“煮饭”; 2.按“C”选择模式,即在“煮饭”、“煮粥”和“煮面”模式中循环选择; 3.按“B”开始执行模式命令,“开始”状态选中,时间区域开始倒计时,倒计时完成后进入“保温”状态,同时该状态显示选中,时间区域显示保温时间; 4.按“Q”取消当前工作状态,系统进入待机状态,时间区域显示北京时间,模式为当前模式; 5.按“X”退出系统,时间区域不显示。 6.煮饭时长为30,煮粥时长为50,煮面时长为40. 三.实验设计: 1.设计思路: 以老师所给的五个程序为基础,看懂每个实验之后,对borlandc的操作有了大概的认识,重点以第五个实验Task_EX为框架,利用其中界面显示与按键扫描以及做出相应的响应,对应实现此次实验所需要的功能。 本次实验分为界面显示、按键查询与响应、切换功能、时钟显示与倒计时模块,综合在一起实验所需功能。 2.模块划分图: (1)界面显示: Main() Taskstart() Taskstartdispinit() 在TaskStartDispInit()函数中,使用PC_DispStr()函数画出界面。

(2)按键查询与响应: Main() Taskstart() 在TaskStart()函数中,用if (PC_GetKey(&key) == TRUE)判断是否有按键输入。然后根据key 的值,判断输入的按键是哪一个;在响应中用switch语句来执行对应按键的响应。 (3)切换功能: l计数“C”按 键的次数 M=l%3 Switch(m) M=0,1,2对应于煮饭,煮粥,煮面,然后使用PC_DispStr()函数在选择的选项前画上“@”指示,同时,在其余两项钱画上“”以“擦出”之前画下的“@”,注意l自增。 四.主要代码: #include "stdio.h" #include "includes.h" #include "time.h" #include "dos.h" #include "sys/types.h" #include "stdlib.h" #define TASK_STK_SIZE 512 #define N_TASKS 2 OS_STK TaskStk[N_TASKS][TASK_STK_SIZE]; OS_STK TaskStartStk[TASK_STK_SIZE]; INT8U TaskData[N_TASKS];

操作系统实验报告

操作系统实验报告 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

实验二进程调度1.目的和要求 通过这次实验,理解进程调度的过程,进一步掌握进程状态的转变、进程调度的策略,进一步体会多道程序并发执行的特点,并分析具体的调度算法的特点,掌握对系统性能的评价方法。 2.实验内容 阅读教材《计算机操作系统》第二章和第三章,掌握进程管理及调度相关概念和原理。 编写程序模拟实现进程的轮转法调度过程,模拟程序只对PCB进行相应的调度模拟操作,不需要实际程序。假设初始状态为:有n个进程处于就绪状态,有m个进程处于阻塞状态。采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态的进程不会阻塞),且每过t个时间片系统释放资源,唤醒处于阻塞队列队首的进程。 程序要求如下: 1)输出系统中进程的调度次序; 2)计算CPU利用率。 3.实验环境 Windows操作系统、VC++6.0 C语言 4设计思想: (1)程序中进程可用PCB表示,其类型描述如下:

structPCB_type { intpid;//进程名 intstate;//进程状态 2——表示“执行”状态 1——表示“就绪”状态 0——表示“阻塞”状态 intcpu_time;//运行需要的CPU时间(需运行的时间片个数) } 用PCB来模拟进程; (2)设置两个队列,将处于“就绪”状态的进程PCB挂在队列ready中;将处于“阻塞”状态的进程PCB挂在队列blocked中。队列类型描述如下: structQueueNode{ structPCB_typePCB; StructQueueNode*next; } 并设全程量: structQueueNode*ready_head=NULL,//ready队列队首指针 *ready_tail=NULL,//ready队列队尾指 针

JAVAWEB实训心得体会

jsp+servlet+mysql 论坛项目实训总结 实训人:程路峰学号: 11103303 通过为期 10 天的实训,我学习了很多关于 java web 的知识。在老师的正确指导下,顺利的完成了我的实训内容。在此,也有同学的帮助,在他们的帮助下我也受益匪浅。最终,能顺利完成实训的任务也很高兴。 在实训生活中,我了解开发项目的需求、设计、实现、确认以及维护等活动整个过程,让自己开始懂得一点软件工程的知识点。 首先,了解需求分析的重要性,比如:需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求, 从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个 for linux 的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发 for windows 的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,恨不得找块豆腐一头撞死。所以,需求分析是成功的第一步,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。 然后呢?确实客户的需求的以后我们要做什么呢,那当然是设计和分析。此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。 接下来是代码实现,此阶段是将网站项目设计的结果转换成计算机可运行的程序代码,我们这个项目为 4 个模块,1.界面,2.逻辑层。3 实现层。4.数据库及使用说明文档,分别为4 个小组成员完成。这阶段我学到很多编程的思想,如: 分层思想、mvc、三大架构的整合、dao 的编写。 编号程序之后就是软件测试了,此时在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。由于时间有限,我们测试是简单的使用一下每一个功能。 在编写代码时,由于自己技术知识水平不广,常常遇到技术难题;还有自己没有良好的编程习惯,不注释,有时连自己也看懵了;编程的结构不好,维修和修改代码是很慢。这次实训让我意识到了自己做为计算机软件工程专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄外,还必须具备良好的心理素质,使自己在以后的途中无论经历什么样的困难,都立于不败之地。“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学专业知识的匮乏。让我真真领悟到“学无止境” 这句话的涵义。而所学的,都是课本上没有而对我们又非常实用的东西,这又给我们的实训增加了浓墨淡采的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。 在这次实训中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中各成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每个成员的意见,使我们的组合达到更加完美。实训过程中,除了要专业知识,包括人际交往,沟通方式及相关礼节方面的内容,对于团队开发来说,团结一致使我深有体会。团队的合作 注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经历,这也是实训最大的收获。

java超市管理系统实训报告

1.1 课程设计的目的 通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。 1.2 课程设计的背景和意义 1.2.1课程设计的背景 20世纪90年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。 超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超市的管理与计算机结合起来,从而超市管理系统应运而生。依靠现代化的计算机信息处理技术来管理超市,节省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。 1.2.2 课程设计的意义 “数据库课程设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持有了深刻的理解,实践性教学取得了良好效果。 1.3 课程设计环境 操作系统:Windows xp 开发软件:Microsoft Visual Studio 2005 数据库:Microsoft SQL Server 2005 第2章系统需求分析 随着人们生活水平的不断提高,对于物质的需求也越来越高,而超市作为日常生活用品聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增加,而为了适应当今信息化发展的时代,一套完整的超市商品管理系统显得尤为重要。

操作系统实验报告-中南大学

操作系统原理试验报告 班级: 学号: 姓名:

实验一:CPU调度 一、实验内容 选择一个调度算法,实现处理机调度。 二、实验目的 多道系统中,当就绪进程数大于处理机数时,须按照某种策略决定哪些进程优先占用处理机。本实验模拟实现处理机调度,以加深了解处理机调度的工作。 三、实验题目 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 四、实验要求 PCB内容: 进程名/PID; 要求运行时间(单位时间); 优先权; 状态: PCB指针; 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度 4、最好采用图形界面; 5、可随时增加进程; 6、规定道数,设置后备队列和挂起状态。若内存中进程少于规定道数,可自动从后备 队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能用于将指定挂起进程解挂入就绪队列。 7、每次调度后,显示各进程状态。 实验二:内存管理 一、实验内容 主存储器空间的分配和回收 二、实验目的 帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 三、实验题目 在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。

四、实验要求 1、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目内容:起址、长度、状态(未分/空表目) 2、结合实验一,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,PCB指针} 3、采用最先适应算法分配主存空间; 4、进程完成后,回收主存,并与相邻空闲分区合并 .1、Vo类说明(数据存储结构) 进程控制块PCB的结构: Public class PCB{ //进程控制块PCB,代表一个进程 //进程名,作为进程的标识; private String name; //要求运行时间,假设进程运行的单位时间数; private int time; //赋予进程的优先权,调度时总是选取优先数小的进程先执行; private int priority; //状态,假设有“就绪”状态(ready)、“运行”状态(running)、 //“后备”状态(waiting)、“挂起”状态(handup) private String state; //进程存放在table中的位置 private int start; //进程的大小 private int length; //进程是否进入内存,1为进入,0为未进入 private int isIn; //进程在内存中的起始位置 private int base; //进程的大小 private int limit; //一些get和set方法以及构造器省略… };

Java实习报告总结3篇

Java实习报告总结3篇 Java实习既可以开阔我们的视野,又可以增长见识,为我们以后进一步走向社会打下坚实的基础。下面搜集了Java实习报告总结,欢迎阅读! 经过五天的Java实训,感触很深,收获也很大,对自己的缺点也有了很多的认识,回首本学期JAVA学习,重点还是在学习概念等一些常识性的东西,关于类型、变量、接口、输入输出流、分析异常、抛出异常,后期主要是小程序运用,Gui界面设计和事件。 在我学习的语言中,我自己认为Java是一门比较强大的面向对象的编程语言,不仅仅是因为它的跨平台型还有它的较强的实用性,强悍的嵌入性。 本次实训主要是针对我们对项目流程不熟悉和对整体项目的把握不清楚,学习数据库的设计和表的建设以及表与表之间的联系,还有一些代码的编写,这些都是我们所不熟悉的也是我们最薄弱的部分。 通过这一周的实训,虽然实训的时间不长,但是总体上收获挺大的,当我们正式准备学习实训java编程技术时,让我感到非常高兴,因为java一直学的是课本知识,所以实训对于我来说是必须要学会熟练操作的。当然开始学习后也并非是想象中那样顺利,开始的学习让我异常感到学习任务的艰巨,因为学习中我遇到了很多以前未曾遇到的难点,有时后也难免会失去耐心,但是,通过老师的指导,自己的努力的练习,我顺利的化解了一道道的障碍。克服了Java学习上的一道道难关,现在自己已经基本掌握了java的基础知识。

有些知识点以前没有学过,但我也没有去研究,实训时突然间觉得自己真的有点无知,虽然现在去看依然可以解决问题,但要浪费许多时间,这一点是我必须在以后的学习中加以改进的地方,同时也要督促自己在学习的过程中不断的完善自我。另外一点,也是在实训中必不可少的部分,就是同学之间的互相帮助。所谓”当局者迷,旁观者清”,有些东西感觉自己做的是时候明明没什么错误,偏偏程序运行时就是有错误,让其他同学帮忙看了一下,发现其实是个很小的错误。所以说,相互帮助是很重要的一点,这在以后的工作或生活中也是很关键的。俗话说:“要想为事业多添一把火,自己就得多添一捆材”。此次实训,我深深体会到了积累知识的重要性。在实训当中我们遇到了不少难题,但是经过我们大家的讨论和老师细心的一一指导,问题得到了解决。两个月的实训结束了,收获颇丰,同时也更深刻的认识到要做一个合格的程序员并非我以前想像的那么容易,最重要的还是细致严谨。社会是不会要一个一无是处的人的,所以我们要更多更快地从一个学生向工作者转变,总的来说我对这次实习还是比较满意的,它使我学到了很多东西,为我以后的学习做了引导,点明了方向。 这次实训,我们更多学到的是不懂就要问和自己应该尽自己的全力去尝试,哪怕失败,也要尽自己的全力,和身边的同学一起探讨而不是抄袭,团队合作和发挥团队意识,最后在自己的努力下终于运行成功,这种感觉美不可言,心情愉悦至极,有很强的成就感。 最后,我自己感觉这次实训的收获还是很大的,我相信在不久的将来我们会有自己的一片天空。

JAVA+SQL学生学籍管理系统代码及实验报告

学生学籍管理系统 1课程设计目的、设计内容与需求分析 1.1 课程设计目的 通过本次课程设计的实践操作,能够让学生懂得Java、SQL的各种相关知识的使用,真正的提高学生独立开发设计Java程序,把课堂上的知识运用在实践上,一门编程语言只有在不断实践操作和练习上才会有进步。 1.2软件设计内容 学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成添加,查询,修改,删除的操作。用ODBC驱动实现前台Java与后台SQL数据库的连接。Java语言跨平台性强,可以在windows,linux,ubuntu等系统下使用,方便简单,安全性好。 SQLServer2005数据库高效安全,两者结合可相互利用各自的优势。系统可供输入的属性有“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。 该系统实现的大致功能: 1.管理员登陆界面。该界面可以输入管理员号,登陆密码。用户通过验证通过后方可进入管理系统。一定程度上保证了信息安全性,防止他人未经允许篡改学生信息。 2.查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信息”。查询到的信息会在窗口中依次显示出来。 3.添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。 4.修改学生信息。可以选择按照“学号”或者“姓名”找到该学生的学生信息并输

相关主题