首页

> 学术论文知识库

首页 学术论文知识库 问题

面向对象论文范文

发布时间:

面向对象论文范文

别在这找了,基本上找不到!我是宋,呵呵!

这类范文在计算机科学与应用这本期刊上有很多的,你自己去找找吧

计算机毕业论文写作指导 毕业论文的结构 免费的范文:

毕业论文格式范文word

摘 要

数据结构算法设计和演示(C++)-树和查找是在面向对象思想和技术的指导下,采用面向对象的编程语言(C++)和面向对象的编程工具(Borland C++ Builder )开发出来的小型应用程序。它的功能主要是将数据结构中链表、栈、队列、树、查找、图和排序部分的典型算法和数据结构用面向对象的方法封装成类,并通过类的对外接口和对象之间的消息传递来实现这些算法,同时利用C++ Builder 中丰富的控件资源和系统资源对算法实现过程的流程和特性加以动态的演示,从而起到在数据结构教学中帮助理解、辅助教学和自我学习的作用。

关键词:数据结构;面向对象;可视化;算法

The Subject of Undergraduate Graduation Project of HEAU

Abstract

外文摘要要求用英文书写,内容应与“中文摘要”对应。使用第三人称,最好采用现在时态编写。

“Abstract”不可省略。标题“Abstract”选用模板中的样式所定义的“标题1”,再居中;或者手动设置成字体:黑体,居中,字号:小三,多倍行距倍行距,段后11磅,段前为0。

标题“Abstract”上方是论文的英文题目,字体:Times New Roman,居中,字号:小三,行距:多倍行距 ,间距:前段、后段均为0行,取消网格对齐选项。 Abstract正文选用设置成每段落首行缩进2字,字体:Times New Roman,字号:小四,行距:多倍行距 ,间距:前段、后段均为0行,取消网格对齐选项。

Key words与Abstract之间空一行。Key words与中文“关键词”一致。词间用分号间隔,末尾不加标点,3-5个,Times New Roman,小四,加粗。

Key Words:Write Criterion;Typeset Format;Graduation Project (Thesis)

目 录

1 引言

计算机与网络技术的高速发展,特别是面向对象技术的出现,使得C++的软件开发得到了迅速普及。

本课题主要 ………………

2 线性表的基本理论知识

线性表的定义

线性表是最简单、最常用的一种数据结构。线性表[1]是n(n>=0)个数据元素的.有限序列。

……。

线性顺序表

线性表的顺序存储结构的特点是为表中相邻的元素ai和ai+1 赋以相邻的存储位置。

三级标题名 三级标题名

1)四级以下标题 2)四级以下标题

线性链表

线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(这组元素可以是连续的,也可以是不连续的)[1]。

……。

3 设计的主体内容

在着手进行上机设计之前首先做好大量准备:应熟悉课题,进行调查研究,收集国内、外资料、分析研究;交互界面的设计和实现。

……。

系统结构的设计

……。

交互界面的设计和实现

„„由公式(1)给出:

线性表的00P序设计

计算机内部可以采用两种不同方法来表示一个线性表,它们分别是顺序表示法和链表表示法。

……。

线性表的顺序存储的实现

…… 以上是顺序表的实现过程,第1-16行包含了list类的说明,接下来是成员函数的定义。 ……。

线性表的链表存储的实现

……

链表的实现包括两个类定义,第一个是link类,第二个是list类。由于一个链表由若干个单独的链结点对象组成,因此一个链结点应当作为单独的link类实现。

.3. 4 结果分析与讨论

例如由于起初未能真正掌握各种控件的功能,我设想是要一个下拉菜单,但是学识肤浅的我试了很多种就是达不到我要的效果,……。

……

关于……的影响如表4-1所示。

5 结语

本课题采用C++语言、面向对象的设计方法实现数据结构的重要算法。 ……

……而且还存在着许多不足之处。如: …… 。

参考文献

[1] 严蔚敏,吴伟民.数据结构(C语言版)[M]. 北京:清华大学出版社,

[2] 沈晴霓,聂青,苏京霞.现代程序设计—C++与数据结构面向对象的方法与实现[M].北京:北京理工大学出版社,

[3] Thomas Connolly Carolyn Begg. Database Systems [M].北京:电子工业出版社,

[4] Roger Bate, Sandy Shrum, CMM Integration Framework[J], CMU/SEI Spotlight

[5] J P Kuilboer,N Ashrafi, Software Process and Produt Improvement[J]. An Empirical Assessment,

[6] 张美金 著. 基于ASP技术的远程教育系统体系结构的研究. /~cddbn/Y517807/pdf/,2003-05-01.

[7]王伟国,刘永萍,王生年,徐晓鹏.B/S模式网上考试系统分析与设计[J].石河子大学学报(自然科学版),2003,6(2):145-147

[8] …

[9] …

[10] …

注 释

致 谢

大学四年的学习生活即将结束,在此,我要感谢所有曾经教导过我的老师和关心过我的同学,他们在我成长过程中给予了我很大的帮助。本文能够成功的完成,要特别感谢我的导师XXX教授的关怀和教导。………。

附录1:附录一题目

附录2:附录二题目

面向对象设计论文模板

靠,这就给5分。自己找吧给500刀还差不多

目 录摘 要…………………………………………………01. 设计说明………………………………………… 主接线…………………………………………、PT配置……………………………………2 2主要保护原理及整定……………………………发电机纵差动保护……………………………保护原理……………………………………3 整定内容……………………………………4 发电机定子匝间保护…………………………5 发电机过激磁保护……………………………7 发电机失磁保护………………………………8 发电机反时限负序过流保护…………………发电机逆功率保护………………………………13 发电机两点接地…………………………………13 主变压器差动保护………………………………14 变压器复合电压过流保护………………………17 参考文献………………………………………………18 1 设计说明 主接线300MW 发电机―变压器组主要保护原理设计,适用于发电机―变压器组采用单元接线,高压侧接入500kV 11/2接线系统;发电机出口侧无断路器;励磁方式为静态励磁系统;在发电机出口侧引接―台高压厂用工作变压器(采用三相分裂线圈)。接地方式:发电机中性点为经配电变压器(二次侧接电阻)接地;主变压器高压侧中性点为直接接地;高压厂用分裂变压器6kV侧中性点为中阻接地系统。 CT、PT配置发电机的出线侧和中性点侧各装设4组CT;主变压器高压侧套管上装设3组CT;高压厂用变压器高压侧套管上(或封闭母线内)装设4组CT;发电机差动保护与主变压器差动保护,当CT不够分配时,允许共用发电机出线侧的一组CT;发电机一变压器组差动保护中,其中的一臂是差接在高压厂用变压器低压侧的CT上;发电机一变压器组差动保护装置,不接入励磁变压器的CT,其差动范围为:从500kV侧CT到发电机中性点CT及高压厂用变压器低压侧CT;CT的二次电流:500kV侧选用1A;其它各侧可为1A或5A。发电机出线侧设有2组PT,其中1组可供匝间保护用(一次侧中性点不直接接地);2组PT均要求设有3个二次线圈。主变压器高压侧设1组PT(三相)。2 主要保护原理及整定计算发电机纵差动保护保护原理变数据窗式标积制动原理∣IT-IN∣2≥KbITINcosφ其中:iT――发电机机端电流 iN――发电机中性点电流 φ――iT、iN之间的相角差标积制动原理的动作量和比率差动保护一样。在区外发生故障时,该原理的表现行为和比率制动原理也完全一样。但在区内发生故障时,由于标积制动原理的制动量反应电流之间相位的余弦,当相位大于90度,制动量就变为负值,负值的制动量从概念上讲即为动作量,因此可极大地提高内部故障发生时保护反应的灵敏度。而比率制动原理的制动量总是大于0的。动作逻辑方式1:循环闭锁方式原理:当发电机内部发生相间短路时,二相或三相差动同时动作。根据这一特点,在保护跳闸逻辑上设计了循环闭锁方式。为了防止一点在区内另外一点在区外的两点接地故障的发生,当有一相差动动作且同时有负序电压时也出口跳闸。 整定内容(假定:TA二次额定电流为5(A))1) 比率制动系数K整定差动保护的比率制动系数。标积制动原理的Kb和K有一理论上的对应关系,装置自动完成它们之间的转换,对用户仍然整定K。无单位。一般:K=) 启动电流lq整定差动保护的启动电流。单位(A)。一般lq=(A)3) TA断线解闭锁电流定值(仅保护方式Ⅱ有效)lct当发电机差电流大于该定值时,TA断线闭锁功能自动退出。单位(倍)它是以电流互感器的二次额定电流为基准的。一般:lct=(倍)4) 差动速断倍数lsd当发电机差电流大于该定值时,无论制动量多大,差动均动作。单位:(倍)它是以电流互感器的二次额定电流为基准的。一般:lsd=3-8(倍)5)负序电压定值(仅保护方式Ⅰ有效)当负序电压达该定值,允许一相差动动作出口跳闸。单位(V)。一般:=4-10(V) 6)TA断线延时定值tct经该定值时间延时发TA断线信号。单位:秒。 发电机定子匝间保护 原理 反应发电机纵向零序电压的基波分量。“零序”电压取自机端专用电压互感器的开口三角形绕组,此互感器必须是三相五柱式或三个单相式,其中性点与发电机中性点通过高压电缆相联。“零序”电压中三次谐波不平衡量由数字付氏滤波器滤除。为准确、灵敏反应内部匝间故障,同时防止外部短路时保护误动,本方案以纵向“零序”电压中三次谐波特征量的变化来区分内部和外部故障。为防止专用电压互感器断线时保护误动作,本方案采用可靠的电压平衡继电器作为互感器断线闭锁环节。本保护能在一定负荷下反应双Y接线的定子绕组分支开焊故障。保护分两段:Ⅰ段为次灵敏段:动作值必须躲过任何外部故障时可能出现的基波不平衡量,保护瞬时出口。Ⅱ段为灵敏段:动作值可靠射过正常运行时出现的最大基波不平衡量,并利用“零序”电压中三次谐波不平衡量的变化来进行制动。保护可带秒延时出口以保证可靠性。保护引入专用电压互感器开口三角绕组零序电压,及电压平衡继电器用2组PT电压量。 整定内容1) 次灵敏段基波“零序”电压分量定值Uh 单位(V)2) 灵敏段基波“零序”电压分量定值U1 单位(V) 3)额定负荷下“零序”电压三次谐波不平衡量整定值U3wn 单位(V)4)灵敏段三次谐波增量制动系数K2 单位:(无) 5)灵敏段延时Tzj 单位:(秒) 整定计算 1)Uh次灵敏段“零序”电压基波分量定值(整定范围1-10V)动作值按躲过任何外部故障时可能出现的基波不平衡量整定Uh=KUo•bp•max式中:Uh=KUo•bp•max――外部短路故障时可能出现的“零 序”电压最大基波不平衡量。 K――可靠系数,可取2-)U1灵敏段“零序”电压基波分量定值(整定范围)动作值按可靠躲过正常运行时出现的最大基波不平衡量整定U1=KUo•bp•n式中:U1=KUo•bp•n――额定负荷下固有的“零序”电压基 波不平衡量,由实测得到(本机有监测软件)。 K――可靠系数,可取 3)U3wn额定负荷下“零序”电压三次谐波不平衡量整定值(整定范围1-10V)开始可整定4(V),开机后由实测得到准确直,然后整定。 4)灵敏段三次谐波增量制动系数(整定范围)由经验决定。一般取)Tzj灵敏段延时(整定范围0-1秒)为增加此段可靠性而设。一般取秒。 发电机(变压器)过激磁保护 原理发电机(变压器)会由于电压升高或者频率降低而出现过励磁,发电机的过励磁能力比变压器的能力要低一些,因此发变组保护的过盛磁特性一般应按发电机的特性整定。 过激磁保护反应过激磁倍数而动作。过激磁倍数定义如下: B U/f U*N= = =Be Ue/fe f*其中:U、f――电压、频率 Ue、fe――额定电压、额定频率 U*、f *――电压、频率标么值 B、Be――磁通量和额定磁通量过激磁电压取自机端TV线电压(如UAB电压)。出口方式Ⅰ:定时限方式 定时限t1发信或跳闸 定时限t2发信或跳闸U/f> t1/o 发信或跳闸 t2/o 发信或跳闸出口方式Ⅱ:反时限方式 定时限发信 反时限发信或跳闸反时限曲线特性由三部分组成:a)上限定时限;b)反时限;c)下限定时限。当发电机(变压器)过激磁倍数大于上限整定值时,则按上限定时限动作;如果倍数超过下限整定值,但不足以使反时限部分动作时,则按下限定时限动作;倍数在此之间则按反时限规律动作. 发电机失磁保护原理失磁保护由发电机机端测量阻抗判据、转子低电压判据、变压器高压侧低电压判据、定子过流判据构成。一般情况下阻抗整定边界为静稳边界圆,但也可以为其它形状。当发电机须进相运行时,如按静稳边界整定圆整定不能满足要求时,一般可采用以下三种方式之一来躲开进相运行区。 a) 下移阻抗圆,按异步边界整定 b) 采用过原点的两根直线,将进相区躲开。此时,进相深度可整定。 c) 采用包含可能的进相区(圆形特性)挖去,将进相区躲开。 转子低电压动作方程 Vfd< Vfd< Vfdo Vfd< (P-Pt) 当Vfd< Kf×SN其中:Vfd――转子电压 ――转子低电压动作值 Vfdo――发电机空载转子电压 Sn――发电机额定功率 Kf――转子低电压系数 P――发电机出力 Pt――发电机反应功率 保护的整定计算1)高压侧低电压 Uhi•dz按照系统长期允许运行的低电压整定。2)阻抗圆心 -Xc以静稳圆整定,也可按异步圆整定。3)阻抗圆半径 -Xr以静稳圆整定,也可按异步圆整定。4)转子低电压Vfl•dz转子低电压可按发电机空载励磁电压的倍整定。5)转子低电压判据系数Kf转子低电压系数,用于整定转子电压动作曲线斜率。单位(元) Kk Kf = 式中,Xd∑=Xd+Xs Xd∑若实际基准为Vfd[0],P[0],与装置假定值Vfd0=125V, SN=866VA相差较大时,可修正Kf 125 P[0] [整] = Kf 866 Vfd[0]Xs为升压变压器及系统等值电抗之和(标么)Kk=为可靠系数,Xd为发电机电抗(标么) 5)反应功率Pt考虑凸极效应。单位(W) 1 1 1Pt = ( - )SN,式中:Xd∑=Xd+Xs, Xd∑=Xq+Xs 2 Xq∑ Xd∑Xd及Xq分别为发电机d轴和q轴电抗(标么),SN为二次基准功率。7)定子过流lg•dz可按发电机过载异步功率整定。单位(A)。一般lg•dz= le8)动作时间t1整定保护的延时动作时间。单位(S)9)动作时间t2整定保护的延时动作时间。单位(S)10)动作时间t3 整定保护的延时动作时间。单位(S)发电机反时限负序过流保护保护原理保护反应发电机定子的负序电流大小。保护发电机转子以防表面过热。保护由二部分组成:负序定时限过负荷和负序反时限过流。电流取自发电机中性点(或机端)TA三相电流。反时限曲线特性由三部分组成:a)上限定时限;b)反时限;c)下限定时限。当发电机负序电流大于上限整定值时,则按上限定时限动作;如果负序电流超过下限整定值,但不足以使反时限部分动作时,则按下限定时限动作;负序电流在此之间则按反时限规律动作。负序反时限特性能真实地模拟转子的热积累过程,并能模拟散热,即发电机发热后若负序电流消失,热积累并不立即消失,而是慢慢地散热消失,如此时负序电流再次增大,则上一次的热积累将成为该次的初值。反时限动作议程: (I22-K22)t≥K21其中:I2――发电机负序电流标么值 K22――发电机发热同时的散热效应 K21――发电机的A值出口方式:可发信或跳闸保护的整定计算1) 定时限负序过负荷电流定值I2•ms•dz 按发电机长期允许的负序电流下能可靠返回的条件整定。2) 定时限负序过负荷动作时间ts 按躲后备保护的动作延时整定。 3)反时限负序过流启动定值I2•m•dz 按保护装置所能提供的最大跳闸时间确定(通常为1000秒),据此发电机能承受的负序电流整定。此值一般应接近于负序过负荷保护的动作电流。 4)反时限负序过流速断定值I2•up•dz 按躲过主变压器高压侧两相短路的条件整定。 5)散热系数K22 一般按发电机长期允许的负序电流标么值整定。 K22=(I2∝/ Ie)2当发电机实际额定电流为Ie,与CT二次额定电流IN相差较大时,需折算 le K22[整] =( )2 K22 lN le K21[整] =( )2 K21 lN其中:l2∝-发电机长期允许的负序电流 le-发电机额定电流6)热值系数 K21按发电机A值整定7)长延时动作时间t1按l2•m•dz电流能够承受的时间整定(一般1000秒)。8)速断动作时间tup 当与其它保护在动作时间的配合上出现矛盾时,应兼顾保护的选择性和灵敏性要求。发电机逆功率保护保护原理逆功率保护用于保护汽轮机,当主汽门误关闭,或机组保护动作于关闭主汽门而出口断路器未跳闸时,发电机将变为电动机运行,从系统中吸收有功功率。此时由于鼓风损失,汽机尾部叶片有可能过热,赞成汽机损坏。因此一般不允许这种情况长期存在,逆功率保护可很好地起到保护作用。在大型发电机组上一般为可靠装设二套独立的逆功率保护。逆功率保护反应发电机从系统吸收有功的大小。逆功率受TV断线闭锁。电压取自发电机机端;电流取自发电机中性点(或机端)TA。出口方式:可发信或跳闸P< t1/o 发信或跳闸 t2/o 发信或跳闸 发电机转子两点接地保护反应定子电压中二次谐波的“正序”分量,此分量是由转子绕组不对称匝间短路时含二次谐波的磁场以同步转速正向旋转而在定子绕组中生成。保护受一点接地保护闭锁,发生一点接地时保护自动投入。保护经入机端三相电压。 整定内容1) 二次波电压动作值Uido 单位:(V)2) 保护动作延时Tido 单位:(S) 整定计算方法1)Uid二次谐波电压动作值(整定范围0-10V)Uld=Kk×UbpnUbpn为额定负荷下二次谐波电压实测值;Kk为可靠系数,可取)Lld保护动作延时(整定范围秒),为增加可靠性而设。主变压器(发变组、厂变、高备变)差动保护 保护原理 变压器差动保护采用有二次谐波制动的比率差动原理,并使用了变数据窗快速算法。比率制动原理∣I1+I2∣≥KMax{I1,I2}(二侧差动)∣I1+I2+I3∣≥KMax{I1+I2+I3}(三侧差动)其中:I1――第一侧电流 I2――第二侧电流 I3――第三侧电流 K――制动系数Max(x,y)――取x,y中最大值 变数据窗算法原理所谓变数据窗算法是指差动保护能够在故障刚开始发生且故障采样数据量较少时自适应地提高保护的制动曲线,随着故障的进一步发展、计算精度的进一步提高,能逢动降低制动特性曲线,以其与算法精度完全相配套。这种自适应的制动曲线,最终的(也是最精确的)是用户整定的特性。采用这一算法可以大大提高严重内部故障时的动作速度,同时丝毫不会降低轻微故障时的灵敏度。出口方式原理:任一相差动保护动作即出口跳闸。这种方式另外配有TA断线检测功能。在TA断线时瞬时闭锁差动保护,并延时发TA断线信号。TA断线可根据需要投退运行。保护的 整定内容(假定TA二次额定电流为5(A))1) 比率制动系数 K整定差动保护的比率制动系数。单位(无)一般:K=) 二次谐波制动比 整定差动二次谐波制动比。单位(无)。一般:Nec=) 启动电流 lq整定差动保护的启动电流。(归算到低压侧)。单位(A)。一般:lq=(A)4) TA断线解闭锁电流定值 lct当差电流大于该定值时,TA断线闭锁功能自动退出。单位:(倍)它是以TA的二次额定电流为基准的。(装置内部默认为5(A)或1(A)一般:lct=(倍)。(归算到低压侧)5) 速断电流 lsd整定差动保护速断电流倍数。它是以TA的二次额定电流为基准的。(装置内部默认为lN5(A)或1(A))单位(倍)。一般lsd=(倍)(归算到低压侧)6) 启动电流 lq按躲过最大负荷电流条件下流入保护装置的不平衡电流整定。最小动作电流宜在以上。装置上一般以归算到低压侧(如发电机侧)电流来整定。7) TA断线解闭锁电流定值 lct按躲开变压器最大负荷电流整定。该电流装置上一般以归算到低压侧(如发电机侧)电流来整定计算。它是以TA的二次额定电流为基准的。Ict =()If•max/(nL×Ict•e)其中:If•max-变压器最大负荷电流 Ict•e-电流互感器二次额定电流8) 速断电流 lsd该电流装置上一般以归算到低压侧(如发电机侧)电流来整定计算。它是以TA的二次额定电流为基准的。如整定n倍额定电流,且TA二次额定电流为5(A):则:lsd=n×le/(n1×5)(倍)推荐n用4-8。 变压器复合电压过流保护 原理保护反应变压器电压、负序电压和电流大小。电流电压一般取自变压器的同一侧TA和TV出口方式:可发信或跳闸。 整定内容1) 电流定值lg•dz整定电流。单位(A)2) 低电夺定值U1•dz 整定低电压。单位(V)3) 负序电压定值U2•dz整定负序电压。单位(V)4) 动作时间t1整定保护的延时动作时间。单位(S)5) 动作时间t2 整定保护的延时动作时间。单位(S)参 考 文 献[1]、<微型计算机原理及应用>郑学坚、周斌编著。清华大学出版社,1995年8月出版社。[4]、Malvino Computer Electronics. McGraw-Hill Publishing Co,1977.[2] Relay,.[3]、Committee Report, Tvansient Respponse of Current .[4]、马长贵主编<高压电网继电保护原理>水利电力出版社,1988。[5]、许正亚编<电力系统故障分析>水利电力出版社,1993。[6]、西北电力设计院,<电力工程电气设计手册2>,水利电力出版社,1990[7]、国家电力调度通信中心<电力系统继电保护实用技术问答>,中国电力出版社,1997、5[8]、国家电力调度通信忠心<电力系统继电保护规定汇编>中国电力出版社,1997[9]、山东省电力局文件<山东电力继电保护配置原则>1997。[10]、东南大学,南京电力自动化设备总厂联合编制,<WFB2-01型微机发电机变压器组保护装置技术说明书>。1997、4、28[11]、南瑞继电保护公司,戴学安,<微机继电保护原理及技术>

毕业论文格式范文word

摘 要

数据结构算法设计和演示(C++)-树和查找是在面向对象思想和技术的指导下,采用面向对象的编程语言(C++)和面向对象的编程工具(Borland C++ Builder )开发出来的小型应用程序。它的功能主要是将数据结构中链表、栈、队列、树、查找、图和排序部分的典型算法和数据结构用面向对象的方法封装成类,并通过类的对外接口和对象之间的消息传递来实现这些算法,同时利用C++ Builder 中丰富的控件资源和系统资源对算法实现过程的流程和特性加以动态的演示,从而起到在数据结构教学中帮助理解、辅助教学和自我学习的作用。

关键词:数据结构;面向对象;可视化;算法

The Subject of Undergraduate Graduation Project of HEAU

Abstract

外文摘要要求用英文书写,内容应与“中文摘要”对应。使用第三人称,最好采用现在时态编写。

“Abstract”不可省略。标题“Abstract”选用模板中的样式所定义的“标题1”,再居中;或者手动设置成字体:黑体,居中,字号:小三,多倍行距倍行距,段后11磅,段前为0。

标题“Abstract”上方是论文的英文题目,字体:Times New Roman,居中,字号:小三,行距:多倍行距 ,间距:前段、后段均为0行,取消网格对齐选项。 Abstract正文选用设置成每段落首行缩进2字,字体:Times New Roman,字号:小四,行距:多倍行距 ,间距:前段、后段均为0行,取消网格对齐选项。

Key words与Abstract之间空一行。Key words与中文“关键词”一致。词间用分号间隔,末尾不加标点,3-5个,Times New Roman,小四,加粗。

Key Words:Write Criterion;Typeset Format;Graduation Project (Thesis)

目 录

1 引言

计算机与网络技术的高速发展,特别是面向对象技术的出现,使得C++的软件开发得到了迅速普及。

本课题主要 ………………

2 线性表的基本理论知识

线性表的定义

线性表是最简单、最常用的一种数据结构。线性表[1]是n(n>=0)个数据元素的.有限序列。

……。

线性顺序表

线性表的顺序存储结构的特点是为表中相邻的元素ai和ai+1 赋以相邻的存储位置。

三级标题名 三级标题名

1)四级以下标题 2)四级以下标题

线性链表

线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(这组元素可以是连续的,也可以是不连续的)[1]。

……。

3 设计的主体内容

在着手进行上机设计之前首先做好大量准备:应熟悉课题,进行调查研究,收集国内、外资料、分析研究;交互界面的设计和实现。

……。

系统结构的设计

……。

交互界面的设计和实现

„„由公式(1)给出:

线性表的00P序设计

计算机内部可以采用两种不同方法来表示一个线性表,它们分别是顺序表示法和链表表示法。

……。

线性表的顺序存储的实现

…… 以上是顺序表的实现过程,第1-16行包含了list类的说明,接下来是成员函数的定义。 ……。

线性表的链表存储的实现

……

链表的实现包括两个类定义,第一个是link类,第二个是list类。由于一个链表由若干个单独的链结点对象组成,因此一个链结点应当作为单独的link类实现。

.3. 4 结果分析与讨论

例如由于起初未能真正掌握各种控件的功能,我设想是要一个下拉菜单,但是学识肤浅的我试了很多种就是达不到我要的效果,……。

……

关于……的影响如表4-1所示。

5 结语

本课题采用C++语言、面向对象的设计方法实现数据结构的重要算法。 ……

……而且还存在着许多不足之处。如: …… 。

参考文献

[1] 严蔚敏,吴伟民.数据结构(C语言版)[M]. 北京:清华大学出版社,

[2] 沈晴霓,聂青,苏京霞.现代程序设计—C++与数据结构面向对象的方法与实现[M].北京:北京理工大学出版社,

[3] Thomas Connolly Carolyn Begg. Database Systems [M].北京:电子工业出版社,

[4] Roger Bate, Sandy Shrum, CMM Integration Framework[J], CMU/SEI Spotlight

[5] J P Kuilboer,N Ashrafi, Software Process and Produt Improvement[J]. An Empirical Assessment,

[6] 张美金 著. 基于ASP技术的远程教育系统体系结构的研究. /~cddbn/Y517807/pdf/,2003-05-01.

[7]王伟国,刘永萍,王生年,徐晓鹏.B/S模式网上考试系统分析与设计[J].石河子大学学报(自然科学版),2003,6(2):145-147

[8] …

[9] …

[10] …

注 释

致 谢

大学四年的学习生活即将结束,在此,我要感谢所有曾经教导过我的老师和关心过我的同学,他们在我成长过程中给予了我很大的帮助。本文能够成功的完成,要特别感谢我的导师XXX教授的关怀和教导。………。

附录1:附录一题目

附录2:附录二题目

面向对象程序设计学术论文范文

学术堂整理了一篇3000字的计算机论文范文,供大家参考:

范文题目:关于新工程教育计算机专业离散数学实验教学研究

摘要: 立足新工科对计算机类专业应用实践能力培养的要求,分析了目前离散数学教学存在的关键问题,指明了开展离散数学实验教学的必要性。在此基础上,介绍了实验教学内容的设计思路和设计原则,给出了相应的实验项目,并阐述了实验教学的实施过程和教学效果。

关键词:新工科教育;离散数学;计算机专业;实验教学

引言

新工科教育是以新理念、新模式培养具有可持续竞争力的创新型卓越工程科技人才,既重视前沿知识和交叉知识体系的构建,又强调实践创新创业能力的培养。计算机类是新工科体系中的一个庞大专业类,按照新工科教育的要求,计算机类专业的学生应该有很好的逻辑推理能力和实践创新能力,具有较好的数学基础和数学知识的应用能力。作为计算机类专业的核心基础课,离散数学的教学目标在于培养学生逻辑思维、计算思维能力以及分析问题和解决问题的能力。但长期以来“定义-定理-证明”这种纯数学的教学模式,导致学生意识不到该课程的重要性,从而缺乏学习兴趣,严重影响学生实践能力的培养。因此,打破原有的教学模式,结合计算机学科的应用背景,通过开展实验教学来加深学生对于离散数学知识的深度理解是实现离散数学教学目标的重要手段。

1.实验项目设计

围绕巩固课堂教学知识,培养学生实践创新能力两个目标,遵循实用性和可行性原则,设计了基础性、应用性、研究性和创新性四个层次的实验项目。

(1) 基础性实验

针对离散数学的一些基本问题,如基本的定义、性质、计算方法等设计了7个基础性实验项目,如表1所示。这类实验要求学生利用所学基础知识,完成算法设计并编写程序。通过实验将抽象的离散数学知识与编程结合起来,能激发学生学习离散数学的积极性,提高教学效率,进而培养学生的编程实践能力。

(2) 应用性实验

应用性实验是围绕离散数学主要知识单元在计算机学科领域的应用来设计实验,如表2所示。设计这类实验时充分考虑了学生掌握知识的情况,按照相关知识点的应用方法给出了每个实验的步骤。学生甚至不需要完成全部实验步骤即可达到实验效果。例如,在“等价关系的应用”实验中,按照基于等价类测试用例的设计方法给出了实验步骤,对基础较差的学生只需做完第三步即可达到“巩固等价关系、等价类、划分等相关知识,了解等价关系在软件测试中的应用,培养数学知识的应用能力。”的实验目的。

(3) 研究性实验研究性实验和应用性实验一样

也是围绕离散数学主要知识单元在计算机科学领域中的应用来设计实验,不同之处在于,研究性实验的实验步骤中增加了一些需要学生进一步探讨的问题。这类实验项目一方面为了使学生进一步了解离散数学的重要性,另一方面为了加强学生的创新意识与创新思维,提高计算机专业学生的数学素质和能力。表 3 给出了研究性试验项目。

(4) 创新性实验

在实际教学中还设计了多个难度较高的创新性实验题目,例如,基于prolog语言的简单动物识别

系统、基于最短路径的公交线路查询系统、简单文本信息检索系统的实现等,完成该类实验需要花费较长的时间,用到更多的知识。通过这些实验不仅有利于培养学生分析问题、解决问题的能力和创新设计能力,也有利于培养学生独立思考、敢于创新的能力。

3.实验教学模式的构建

通过实验教学环节无疑可以激发学生对课程的兴趣,提高课程教学效率,培养学生的实践创新能力。但是,近年来,为了突出应用性人才培养,很多地方本科院校对离散数学等基础理论课的课时进行了压缩,加之地方本科院校学生基础较差,使得离散数学课时严重不足,不可能留出足够的实验教学时间。针对这种情况,采用多维度、多层次的教学模式进行离散数学实验教学。

(1) 将实验项目引入课堂教学

在离散数学的教学过程中,将能反映在计算机科学领域典型应用的实验项目引入到课堂教学中,引导学生应用所学知识分析问题、解决问题。例如在讲授主析取范式时,引入加法器、表决器的设计,并用multisim进行仿真演示,让学生理解数理逻辑在计算机硬件设计中的作用。又如讲谓词逻辑推理时,引入前一届学生用Prolog完成的“小型动物识别系统”作为演示实验。这些应用实例能够让学生体会数理逻辑在计算机科学领域的应用价值,不仅激发学生的学习兴趣,提高课堂教学效率,也锻炼了学生的逻辑思维,培养了学生的系统设计能力。

(2) 改变课后作业形式,在课后作业中增加上机实验题目

由于课时有限,将实验内容以课后作业的形式布置下去,让学生在课余时间完成实验任务。例如讲完数理逻辑内容后,布置作业: 编写 C语言程序,实现如下功能: 给定两个命题变元 P、Q,给它们赋予一定的真值,并计算P、P∧Q、P∨Q的真值。通过完成,使学生掌握命题联结词的定义和真值的确定方法,了解逻辑运算在计算机中的实现方法。又如,把“偏序关系的应用”实验作为“二元关系”这一章的课后作业,给定某专业开设的课程以及课程之间的先后关系,要求学生画出课程关系的哈斯图,安排该专业课程开设顺序,并编写程序实现拓扑排序算法。通过该实验学生不仅巩固了偏序关系、哈斯图等知识,而且了解到偏序关系在计算机程序设计算法中的应用和实现方法。

(3) 布置阅读材料

在教学中,通常选取典型应用和相关的背景知识作为课前或课后阅读材料,通过课堂提问抽查学生的阅读情况。这样,不仅使学生预习或复习了课程内容,同时也使他们对相关知识点在计算机学科领域的应用有了一定的了解。例如,在讲解等价关系后,将“基于等价类的软件测试用例设计方法”作为课后阅读材料; 在讲解图的基本概念之前,将“图在网络爬虫技术中的应用”作为课前阅读材料; 货郎担问题和中国邮路问题作为特殊图的课后阅读材料。通过这些阅读材料极大地调动学生学习的积极性,取得了非常好的教学效果。

(4) 设置开放性实验项目

在离散数学教学中,通常选择一两个创新性实验项目作为课外开放性实验,供学有余力的学生学习并完成,图1给出了学生完成的“基于最短路径公交查询系统”界面图。同时,又将学生完成的实验系统用于日后的课堂教学演示,取得了比较好的反响。

(5) 利用网络教学平台

为了拓展学生学习的空间和时间,建立了离散数学学习网站,学习网站主要包括资源下载、在线视频、在线测试、知识拓展和站内论坛五个部分模块,其中知识拓展模块包含背景知识、应用案例和实验教学三部分内容。通过学习网站,学生不仅可以了解离散数学各知识点的典型应用,还可以根据自己的兴趣选择并完成一些实验项目。在教学实践中,规定学生至少完成1-2个应用性实验项目并纳入期中或平时考试成绩中,从而激发学生的学习兴趣。

4.结束语

针对新工科教育对计算机类专业实践创新能力的要求,在离散数学教学实践中进行了多方位、多层次的实验教学,使学生了解到离散数学的重要

性,激发了学生的学习兴趣,提高了学生程序设计能力和创新能力,取得了较好的教学效果。教学团队将进一步挖掘离散数学的相关知识点在计算机学科领域的应用,完善离散数学实验教学体系,使学生实践能力和创新思维得以协同培养,适应未来工程需要。

参考文献:

[1]徐晓飞,丁效华.面向可持续竞争力的新工科人才培养模式改革探索[J].中国大学教学,2017(6).

[2]钟登华.新工科建设的内涵与行动[J].高等工程教育研究,2017(3).

[3]蒋宗礼.新工科建设背景下的计算机类专业改革养[J].中国大学教学,2018( 11) .

[4]The Joint IEEE Computer Society/ACM Task Force onComputing Curricula Computing Curricula 2001 ComputerScience[DB / OL]. http:/ / WWW. acm. org / education /curric_vols / cc2001. pdf,2001.

[5]ACM/IEEE - CS Joint Task Force on Computing Curricula.2013. Computer Science Curricula 2013[DB / OL]. ACMPress and IEEE Computer Society Press. DOI: http: / / dx.doi. org /10. 1145 /2534860.

[6]中国计算机科学与技术学科教程2002研究组.中国计算机科学与技术学科教程2002[M].北京: 清华大学出版社,2002.

[7]张剑妹,李艳玲,吴海霞.结合计算机应用的离散数学教学研究[J].数学学习与研究,2014(1) .

[8]莫愿斌.凸显计算机专业特色的离散数学教学研究与实践[J].计算机教育,2010(14)

免费查阅文献的刊物,你可以看看(计算机科学与应用)等等这些

1.杜茂康,吴建,王永.C++面向对象程序设计.电子工业出版社.2.佟俐鹃,秦奕青,张志华.C++面向对象程序设计(第6版)(英文改编版).清华大学出版社.3.王育坚,VisualC++面向对象编程教程(第2版)4.温秀梅,丁学钧,VisualC++面向对象程序设计教程与实验5.冯博琴,VisualC++与面向对象程序设计教程(第3版)

面向对象为题的毕业论文

TAGS: 毕业论文 计算机 基于 远程 对象 RMI 方法 实现 调用 哪位老兄有计算机毕业设计论文啊?是基于java的,小弟急用,谢谢!用RMI开发基于Java的企业分布式应用我站还提供更多的免费计算机论文,但免费论文仅供参考,建议广大网友下载后不要轻易采用。摘要由于Java具有跨平台、代码可移植性、安全高效等广泛而强大的功能,因而在开发网络分布式应用的时候,可以用它自身的机制实现分布式计算,一种基于Java的远程方法调用(RMI)为我们开发企业分布式应用提供了行之有效的解决方案。关键词 Java RMI 企业分布式应用 1 概述随着电力企业信息化建设的不断深入和发展,企业内部和企业与企业之间对信息、对数据的交换量大大增加,这些信息与数据越来越需要在不同的计算机网络间传送和交流。同时,由于各单位、各部门之间的现存的计算机网络硬件设备与操作系统千差万别,应用水平也参差不齐,因此,开发出跨平台、可移植、高效安全的网络分布式应用来服务于电力企业,就显得尤为重要。在当今的编程术语里,分布式计算已经成为很常见的词,它将企业的业务数据和程序分布在网络的不同物理位置上,通过调动网络上多台计算机的处理能力,发挥远程调用数据的功能。远程方法调用(Remote Method Invocation ,RMI),可以在不同的Java虚拟机(JVM)之间实现对象与对象的通信。JVM可以位于相同或不同计算机上,在多个JVM中,一个JVM可以调用存储在其它JVM的对象的方法。本文主要介绍RMI的特点,分析应用RMI进行企业分布式计算的原理,以及利用RMI实现基于Java的企业分布式应用的具体步骤。2 远程方法调用(RMI)的特点 TCP编程的缺点由于Java编程语言设计之初就是面向对象和支持网络的,因此,基于对象的RMI机制已经内置在Java平台中。我们经常会在网络开发中使用TCP/IP编程,这样,自然而然地就会涉及到Socket(套接字)编程。但是,使用Socket编程需要大量重复编码,在复杂分布式操作时显得非常麻烦,而且易于出错。因此,如何快速、高效、安全、可扩展地进行网络分布式计算,是开发者们一贯追求和倡导的主题。直到RMI的出现,这种繁杂、低效的开发情况才有很大改观。 RMI编程的特点当我们利用对象序列化在网络上分配对象时,RMI提供了非Java平台无法匹敌的独特而强电子商务资料库)*!%267'$#7'455大的分布式计算模型,RMI主要有以下特点:? 客户机可以向本地方法一样调用远程服务器上的方法;? 可以根据接口指定客户机/服务器编程合约;? 可以从服务器对象缺省二进制类文件,自动生成调动/反调动代码;? 将Java编程模型扩展到机器边界(和Java虚拟机(JVM)边界之外),不需要任何特殊语法;? 还可以和一个远程方法调用中的数据同时传输行为(代码)。尽管RMI不是唯一的企业级远程对象访问方案,但它却是最容易实现的。 RMI与CORBA作为分布式应用程序框架的规范,COBRA首当其冲,它是由对象管理组织(OMG)开发的。与CORBA不同的是,CORBA能够利用不同编程语言(例如C/C++、Basic等)开发实现分布式应用,而RMI是一种纯Java解决方案。在RMI中,程序的所有部分都由Java语言编写,这样,开发出来的程序完全符合Java规范,便于实现跨平台访问、扩展和移植。按照笔者所在西北电力建设集团公司的情况看,服务器操作系统主要有Linux和Windows2000 Server,分别存在于公司和部门当中,它们是不同的系统平台;同时,公司下属各个工程项目部又距离很远,近的几十公里,远则达到上千公里甚至位于国外,因此跨平台和远程访问这两大功能在开发企业应用系统时就必须考虑,而RMI恰恰能够用它的自身特点来满足编程需要。3 RMI基本体系结构简介RMI通过TCP/IP在内部使用Socket,象其名称暗示的那样,它能够帮助我们查找并执行远程对象的方法。RMI的目的是让位于不同JVM中的对象,在外观及行为上都像是本地的对象。通常,我们把调用这种远程对象的JVM,称为客户机;而把包括这种远程对象的JVM,称为服务器。尽管对一个远程对象的引用和获得对本地对象的引用有所不同,但我们可以把远程对象像本地对象一样使用。应用程序并不知道一个对象是远程的还是本地的。实际上,远程对象上被调用的方法与本地对象上调用的方法,具有相同的语法结构。作为RMI的底层(会包含复杂的Socket操作),它会自动截获方法调用,找到远程对象,然后处理远程请求。笔者认为,RMI设计的重要之处,就在于不但在设计上实现了远程访问功能,而且实现了设计的透明性。RMI的基本体系结构,概括起来说,由三个抽象层组成: 存根/框架层(Stubs/Skeletons Layer)

目 录一、概要设计……………………………………………………………3二、程序整体设计说明…………………………………………….…..4三、程序部分源代码及注释…………………………………………….9四、测试结果………………………………………………………….24五、设计心得…………………………………………………………25六、致 谢…………………………………………………………25七、参考文献…………………………………………………………25【摘 要】该程序是一个图形界面的java文档编辑器,其界面主要采用了awt包, 程序实现了文本编辑器的基本功能有:新建文件、打开文件、文件保存、文件另存为、剪切、复制、粘贴、删除、查找/替换、改变字体大小,另外还利用Time类的schedule方法实现了文件的定时自动更新功能,并创建备份文件,由于该编辑器是用的awt包,所以在技术上没有实现将Java的关键字以不同颜色显示功能。【关键字】java 编辑器一、概要设计Java程序编辑器是:图形界面、线程、流与文件等技术的综合应用。图形界面的实现:考虑到简单、实用、高效等特点,就选择了AWT来完成实现,在选择组件上,文本编辑区就选用了TaxtArea作为主要的部件。线程实现文件自动保存:在相关的参考书上查阅到在Time类中有一个schedule方法可以在后台自动完成一定的功能,而且调用起来相当简单,于是就用了Time类中的schedule方法来实现文件自动保存及备份功能。文件操作的实现:利用了字符文件流FileReader和FileWriter类来实现。由于Java的特性,可能用任何一个编辑器来编辑,于是就将Windows中的记事本作为模仿对象,根据实现情况删减了其中的一些功能,如自动换行,设置字体,打印等功能。在设计类的时候,考虑到简单明了,就用了两个类,一个主类和一个默认属性类作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。主类完成对象的实例化及显示。这们设计的优点是:条理清晰,容易理解,容易修改。这样设计的缺点是:不利于共享类中的方法。二、程序整体设计说明、程序框架图、程序中所用类说明(1)用户自定义类类名:EditInstantiation作用:实例化对象继承的父类:WindowAdapter主要成员变量:Frame myFrm // 定义主窗体TextArea myText // 定义文本编辑区Dialog myDlgFind,myDlgFindont //查找及设置字体对话框TextField TFfind, TFreplace, TffontSize//查找对话框和字体窗体中的文本行Button BfontOK, Bfind, Breplace, Bnext, Bcancel //定义和创建各按钮Label Lf, Lr, Ls //定义和创建各标签MenuBar Mbbar //定义和创建主菜单Menu Mfile,Medit,Mformation,Mhelp //定义和创建主菜单中的选项Toolkit toolKitClipboard myCB //剪切板对象FileDialog myFDlg //定义文件对话框Choice ChfontName //定义和创建字体选择框private int VIindex = 1; //构成文件名后缀变量private String VSsubFixStr=".java"; //构成文件名扩展名变量private String VSmyFileName = "Document1",VSmyBFileName;//文件名及备份文件名变量private File VFmyFile=new File(VSmyFileName+VIindex+".java");//文件名变量private int VIsearchPosition=0; //查找位置指针private Timer VTtime; //实例化一个Time类private int VImin=1; // schedule方法中的一个时间参数private int VItype=;//提示对话框类型private String VStitle; //提示对话框标题private String VSmessage; //提示对话框信息private boolean VBchanged = true; //改变字体的一个标识private int VIfontSizeMin = 8, VIfontSizeMax = 40, VIfontSizeChangedStep = 2; //设置字体大小及步长主要成员方法:public void init() //初始化各部件菜单的定义和事件的监听public void displayEdit ()//显示窗体及调用Time中的schedule方法public void windowClosing () //关闭窗体public void save //保存文件方法a.内部类类名:KeyEvents作用:实现菜单的事件的响应功能继承的父类:KeyAdapter主要成员变量:无成员方法:actionPerformed()、keyPressed()b.内部类类名:FindKeyEvent作用:实现查找中各部件事件的响应功能继承的父类:无主要成员变量:无成员方法:actionPerformed ()c.内部类类名:fontEvent作用:实现字体中各部件事件的响应功能继承的父类:无主要成员变量:无成员方法:ItemListener(),ActionListener()(2)用户自定义类与Java类的继承关系图如下:自定义类 Java 类线程使用说明、实现接口方法本程序用到的方法有:schedule其方法描述如下:schedule(事件,启动时间,间隔时间);、线程应用本程序为文本编辑器,为实现自动更新,应用到了线程,每隔1分钟对文件进行自动更新、异常处理说明(1)打开文件时的异常处理需要处理的异常:IOException处理方法:捕获异常后,显示捕获的异常(2)保存文件时的异常处理需要处理的异常:IOException处理方法:捕获异常后,显示捕获的异常、程序运行效果及存在的问题(1)程序运行主要界面如下:a、主界面b、打开文件对话框c、保存文件对话框d、另存为文件对话框e、查找/替换对话框f.字体对话框.程序尚还存在的问题我花费了近一个多星期的时间,查阅了许多相关的资料,终于把这个Java编辑器,程序基本实现了该课程设计的基本要求。但由于自己水平有限,使得程序还有不是很完善,首先,最重要的一点是该设计的最重要的功能自动改变java关键字的颜色没有实现。三、程序部分源代码及注释//****************************************************// class name :Edit// implements :none// extends :none// attribute :public// founction :entrance of the class//*****************************************************public class Edit{ //主类public static void main(String args[]){EditInstantiation myEdit= new EditInstantiation();(); //初始化(); //显示窗体}//****************************************************// class name :EditInstantiation// implements :none// extends :WindowAdapter// attribute :default// founction :EditInstantiation of the main class//*****************************************************class EditInstantiation extends WindowAdapter{ //默认属性类//define sources 定义各部件Frame myFrm=new Frame("我的编辑器"); //定义窗体TextArea myText=new TextArea(); //定义窗体Dialog myDlgFind=new Dialog(myFrm,"查找",true); //定义查找对话框Dialog myDlgFindont=new Dialog(myFrm,"字体",true); //定义字体对话框TextField TFfind=new TextField(30);//定义查找对话中的查找输入框TextField TFreplace=new TextField(30); //定义查找对话中的替换输入框TextField TFfontSize,TFfontDemo;//定义字体大小文本框和示例框Choice CHfontName;//定义字体大小选择框List LTfontSize; //定义字体大小标签Button BfontOK,BfontCancel; //定义字体大小对话中的确定及取消按钮Button Bfind=new Button("查找");//定义查找对话中的查找按钮Button Breplace=new Button("替换");//定义查找对话中的替换及取消按钮Button Bnext=new Button("下一个");//定义查找对话中的下一个及取消按钮Button Bcancel=new Button("取消");//定义查找对话中的确定及取消按钮Label Lf=new Label("查找内容:");Label Lr=new Label("替换为: ");Label Ls=new Label("字体大小:");FileDialog myFDlg;Clipboard myCB=().getSystemClipboard(); //剪切板对象Menu Mfile,Medit,Mformation,Mhelp;MenuBar MBbar;//define varities //定义各变量private int VIindex = 1;private String VSsubFixStr=".java";private String VSmyFileName = "Document1",VSmyBFileName;private File VFmyFile=new File(VSmyFileName+VIindex+".java");private int VIsearchPosition=0;private Timer VTtime;private int VImin=1; // parameter in time schedulprivate int VItype=;private String VStitle;private String VSmessage;// flag of the changeingprivate boolean VBchanged = true;// the scope of the fontprivate int VIfontSizeMin = 8, VIfontSizeMax = 40, VIfontSizeChangedStep = 2;//************************************************//founction name:init()//parameter :none//attribute :public//founction :initia all compont//************************************************public void init(){ //初始化各部件//------------------ set menu ------------------MBbar=new MenuBar();(MBbar);Mfile=new Menu("文件");Medit=new Menu("编辑");Mformation=new Menu("格式");Mhelp=new Menu("帮助");(Mfile);(Medit);(Mformation);(Mhelp);//文件菜单 add File (new MenuItem("新建",new MenuShortcut()));(new MenuItem("打开",new MenuShortcut()));(new MenuItem("保存",new MenuShortcut()));(new MenuItem("另存为"));();//分隔线(new MenuItem("退出",new MenuShortcut()));//编辑菜单 add Edit (new MenuItem("剪切"));//,new MenuShortcut()));(new MenuItem("复制"));//new MenuShortcut()));(new MenuItem("粘贴"));//new MenuShortcut()));(new MenuItem("删除"));//new MenuShortcut()));();//分隔线(new MenuItem("查找/替换",new MenuShortcut()));();//分隔线(new MenuItem("全选",new MenuShortcut()));//格式菜单 add Formation (new MenuItem("字体",new MenuShortcut()));//帮助菜单 add Formation (new MenuItem("关于作者"));//----------------- menu add end -------------------------//add Menu Action (new KeyEvents());(new KeyEvents());(new KeyEvents());(new FindKeyEvent());//--------------------------- Find (350,115);(250,150);(new FlowLayout());();(false);(false);(false);(Lf);(TFfind);(Lr);(TFreplace);(Bfind);(Breplace);(Bnext);(Bcancel);(new WindowAdapter(){public void windowClosing(WindowEvent e){(false);}});//为查找对话框窗体注册事件监听(new KeyEvents());//注册事件监听(new FindKeyEvent());(new FindKeyEvent());(new FindKeyEvent());(new FindKeyEvent());//--------------- end add action listener ------------//================set font dialog ==============//font size text fieldTFfontSize = new TextField("8",14);();//font size list fieldLTfontSize = new (5, false);(new fontEvent());for(int i = VIfontSizeMin; i <= VIfontSizeMax; i = i + VIfontSizeChangedStep)(i + "");//添加字体大小(0);//two Button Ok CancelBfontOK = new Button("确定");(new fontEvent());BfontCancel = new Button("取消");(new fontEvent());//a TextField for demo the fontTFfontDemo = new TextField("Java awt",37);(false);// my font dialog设置字体对话框(new FlowLayout());();(Ls);(TFfontSize);(BfontOK);(BfontCancel);(LTfontSize);(TFfontDemo);(300,200);(300,200);(false);(new WindowAdapter() {public void windowClosing(WindowEvent e) {(false);}}); //为字体对话框窗体注册事件监听//=============end set font dialog// =======set Edit frame设置编辑器窗休(myText,);(500,400);();(this);(500,400);(200,100);("Java编辑器");}//************************************************//founction name:displayEdit()//parameter :none//attribute :public//founction :initial and display the frame//************************************************public void displayEdit(){ //显示窗体(true);//---------------------- auto save ---------------------VTtime = new Timer(true);(new (){public void run(){if(VSmyFileName!=null){save(VSmyFileName+".java");VSmyBFileName=VSmyFileName+".bak";} //添加自动保存功能save(VSmyBFileName);}}, VImin*60*1000,VImin*60*1000);//parament 1 the task//parament 2 when to start the task//parament 3 set the interval time }//****************************************************// class name :KeyEvents// implements :ActionListener// extends :KeyAdapter// attribute :default// founction :implement the mouse and key action//*****************************************************class KeyEvents extends KeyAdapter implements ActionListener{//********************************************************//founction name:actionPerformed()//parameter :none//attribute :public//return :void//founction :realize the key action in the menu//*********************************************************public void actionPerformed(ActionEvent e){//完成菜单事件的功能// File Menuif (()=="新建"){//remind youJFrame aFrame=new JFrame();();JOptionPane optionPane=new JOptionPane();String choices[]={"是","否","取消"};int n=(aFrame,"文件正文已更改,是否保存更改","文本编辑器",[0]);//保存文件后新建if(n==0){//若文件存在,保存在原文件中,再新建文件try{if(()){save(VSmyFileName); // call the save ("");VIindex++;}else{//若文件不存在,则保存后再新建myFDlg=new FileDialog(myFrm,"保存文件",);(VSmyFileName);();VSmyFileName=()+();save(VSmyFileName);("");VIindex++;}}catch(Exception ne){}}//不保存文件新建if(n==1){("");VIindex++;}//取消新建if(n==0){return;}}//打开菜单 Open Menuif (()=="打开") {myFDlg=new FileDialog(myFrm,"打开",);();if (()!="") {VFmyFile=new File(()+());VSmyFileName=()+();if( ()){try{FileReader fr=new FileReader(VFmyFile);BufferedReader br=new BufferedReader(fr);String text;("");while ((text=())!=null)(text+"\r\n");();();}catch(IOException ioe){VStitle="提示";VSmessage="打开文件出错";(myFrm,VSmessage,VStitle,VItype);}}}}//保存菜单 Save Menuif (()=="保存"){myFDlg=new FileDialog(myFrm,"保存文件",);(VSmyFileName);();VSmyFileName=();if(VSmyFileName!=null){VSmyFileName=()+();save(VSmyFileName);}}//另存为菜单 SaveAs Menuif (()=="另存为"){myFDlg=new FileDialog(myFrm,"文件另存为",1);(VSmyFileName);();VSmyFileName=();if(VSmyFileName!=null){VSmyFileName=()+();save(VSmyFileName);}}//退出菜单 exit Menuif (()=="退出")(0);//编辑 Edit Menuif (()=="剪切"){//CutString text =();StringSelection selection = new StringSelection(text);(selection, null);("",(),());}if (()=="复制"){//copyString text=();if(text!=null){StringSelection selection=new StringSelect

一切一切…网上搜搜…给我分吧…

软件设计毕业设计论文题目

软件设计毕业设计论文题目如何拟定,大家有参考的范文吗?以下是我为大家整理的关于软件设计毕业设计论文题目,希望大家喜欢!

1) 组合型板翅式换热器热力设计软件的开发

2) 导波结构健康监测系统软件数据管理模块设计

3) 基于SAP2000分析平台的变电站构架设计软件

4) 通用型激光加工工艺控制软件的领域模型设计

5) 基于蚁群算法的自动化立体车库监控软件的优化设计

6) 发电厂自动抄表软件人机交互界面设计

7) 不同种植设计软件对种植体位置偏差的影响

8) 玉米自动考种流水线控制系统设计--基于MCGS嵌入式组态软件

9) 嵌入式实时软件在计算机软件设计中的运用研究

10) 嵌入式实时软件在计算机软件设计中的运用

11) 测控数据实时监测软件设计方法研究

12) 体验模型指导下的云办公软件社会化分享设计

13) 计算机软件开发设计的难点分析

14) 无人机地面在线检测软件的设计

15) 配网数字化规划设计档案一体化软件设计研究

16) 嵌入式系统设计实验的Qt MIPS仿真软件开发

17) Solidworks参数化设计软件在我国家具研发中的应用

18) 会议电视系统平板会控软件设计与实现

19) 锅炉设计中引入三维设计软件的思考

20) 平面设计软件与DICOM图像数据处理技术

21) FLASH动画设计软件在多媒体技术中的应用

22) 无人机飞控计算机自动测试软件设计与开发

23) 基于虚拟现实技术的软件界面设计与研究

24) 面向掩星观测的软件接收机设计

25) 基于软件通信体系结构的波形FPGA软件设计方法

26) 基于MATLAB的`同步发电机原动机及其调速系统参数辨识与校核可视化软件设计

27) 基于USB的软件综合安全模块设计及应用

28) 面向大数据处理的内容服务器软件设计与实现

29) 基于Android终端的企业即时通信软件的设计与实现

30) 临时限速服务器软件设计优化研究

31) 锥形束CT与simplant软件辅助设计模拟种植下颌牙列缺损的临床研究

32) 面向复用的软件设计方法研究

33) 电网规划数据处理辅助软件的流程设计

34) GPS农田平地机土方量及设计高程计算软件开发

35) 基于STC89C52的智能台灯软件设计

36) 浅析计算机平面设计中设计软件的相互结合与应用

37) 商业固体激光器设计软件应用研究

38) 体育运动会比赛软件系统的设计与研究

39) 综合化航空电子系统网络传输延迟测试软件设计

40) 基于XML的监控软件快速设计技术

41) 基于三维动画软件的服装设计分析与研究

42) 基于Matlab的水与蒸汽热力学性质查询软件设计

43) 机顶盒软件模块设计及实现

44) 剪纸拼接与PS软件设计截骨矫正强直性脊柱炎后凸畸形的对比

45) 基于联合辅助设计软件的试验仪控数字化平台开发

46) ZBrush数字雕刻软件在电脑首饰设计中的应用

47) 对以用户体验为导向的智能手机应用软件界面设计的几点探讨

48) 点云数据生成软件的设计及其在月饼模具逆向设计与制造中的应用

49) 一种新型的有源交错并联Boost软件开关电路设计

50) 基于第一创造法的可拓创新软件设计

51) 基于DCS的工程项目设计软件介绍

52) 一种复杂模式网传数据软件模拟器的设计

53) VB环境下交互式GMT地学绘图软件的设计及实现

54) 基于等效的单体包装机软件模块化设计研究

55) 基于Visual Basic的工程数量计算软件设计与开发

56) 基于数据库的油气管道线路施工图设计软件二次开发

57) 基于EDA软件的滤波器设计

58) 基于Android的可配置工业远程监控软件设计与实现

59) 基于图像方式的受电弓滑板磨耗检测系统软件设计

60) 基于移动互联网的个人健康管理软件设计与实现

61) 老年人的握力测量软件沉浸式界面设计

62) 基于XMPP协议的Android即时通信软件的设计与实现

63) CFD软件自动化验证确认云平台设计与实现

64) 基于模糊聚类的色选机上位软件系统研究与设计

65) 双排桩支护结构理正软件设计计算与有限元(MIDAS/GTS)模拟分析

66) 移动端智能手机软件产品的UI设计研究

67) 基于ZYNQ的软件无线电平台设计与实现

68) 基于面向对象的纸机传动系统软件设计的研究

69) 软件企业设计人员胜任力模型研究

70) 算法可视化软件设计中关键问题的研究

71) 基于参与式设计方法的移动端烹饪软件界面设计研究

72) 支持语音识别功能的Andriod记事本软件设计与实现

73) 中小企业财务软件设计与应用

74) 基于Android的便携式心电监护系统软件的设计

75) 通用测试系统软件架构及关键技术的设计与实现

76) 基于双DSP的制导飞行器控制系统的软件设计

77) 达芬奇技术下的视频处理及传输系统的软件设计与实现

78) 基于SolidWorks的管壳式换热器辅助设计软件研究

79) 医学影像处理与分析软件平台设计与实现

80) 软件园研发建筑空间形态设计研究

81) 基于数据库的滑动轴承设计计算软件开发

82) 基于AutoCAD的滴灌工程设计软件研究与实现

83) 基于Gaudi的CSR外靶实验数据处理软件框架设计

84) 轮式起重机回转系统设计计算软件开发

85) 轮式起重机转向系统设计计算软件开发

86) CS公司软件开发人员薪酬体系优化设计研究

87) 基于可拓创新方法的产品创新软件设计与实现

88) 数字示波器自动校准软件设计

89) 基于Linux的多功能监护仪软件设计

90) CFETR设计软件集成平台研发

标准大学毕业论文面向对象

毕业设计就看结果,哪个管你的具体过程哦。能跑起来运行就可以了,至于你的论文,肯定是按需求文档写呗

java程序站专门收集整理了《Java工程师成神之路(1)》问题和答案整理成册,分成系列文章分享给大家。基础篇01面向对象→ 什么是面向对象、面向过程?面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。面向对象的三大基本特征和五大基本原则?一、三大基本特征:封装、继承、多态1、封装:也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏2、继承:所谓继承是指可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按级分类的概念。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展3、多态:所谓多态就是指一个类实例的相同方法在不同情形有不同表现形式。多态机制使具有不同内部结构的对象可以共享相同的外部接口。这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们(那些操作)可以通过相同的方式予以调用二、五大基本原则1、单一职责原则(SRP)是指一个类的功能要单一,不能包罗万象2、开放封闭原则(OCP)一个模块在扩展性方面应该是开放的而在更改性方面应该是封闭的3、里氏替换原则(LSP)子类应当可以替换父类并出现在父类能够出现的任何地方。继承的体现4、依赖倒置原则(DIP)具体依赖抽象,上层依赖下层。5、接口隔离原则(ISP)模块间要通过抽象接口隔离开,不通过具体的类关联,降低耦合度→ 平台无关性什么是平台无关性,Java是如何做到平台无关的?平台无关(跨平台): 一种语言在计算机上的运行不受平台的约束,一次编译到处运行。Java经过编译之后生成的.class 的字节码文件,运行平台上只要有JVM就能运行,不需要进行再次编译JVM 还支持哪些语言(Kotlin、Groovy、JRuby、Jython、Scala)→ 值传递值传递、引用传递java中只存在值传递,只存在值传递!!! 然而我们经常看到对于对象(数组,类,接口)的传递似乎有点像引用传递,可以改变对象中某个属性的值。但是不要被这个假象所蒙蔽,实际上这个传入函数的值是对象引用的拷贝,即传递的是引用的地址值,所以还是按值传递。为什么说 Java 中只有值传递?Java 语言的参数传递只有「按值传递」。当一个实例对象作为参数被传递到方法中时,参数的值就是该对象的引用的一个副本。指向同一个对象,对象的内容可以在被调用的方法内改变,但对象的引用(不是引用的副本) 是永远不会改变的。按值传递的精髓是:传递的是存储单元中的内容,而不是存储单元的引用!→ 封装、继承、多态继承多态方法重载与方法重写修饰符代码块final关键字代码块的执行顺序:静态代码块优先于构造代码块,构造代码块优先于构造方法。02 Java 基础知识→ 基本数据类型7 种基本数据类型:整型、浮点型、布尔型、字符型以及取值范围?什么是浮点型?什么是单精度和双精度?单精度浮点数(float)与双精度浮点数(double)的区别如下:(1)在内存中占有的字节数不同单精度浮点数在机内占4个字节双精度浮点数在机内占8个字节(2)有效数字位数不同单精度浮点数有效数字8位双精度浮点数有效数字16位(3)所能表示数的范围不同单精度浮点的表示范围: ~ +双精度浮点的表示范围: ~ +(4)在程序中处理速度不同一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快为什么不能用浮点型表示金额?金额计算不能用doube!必须用BigDecimal1.出现科学计数法2.计算金额不准确,丢失精度→ 自动拆装箱什么是包装类型、什么是基本类型?1、为什么存在基本类型:在Java中正常应该设置对象,然后通过new一个对象存储在堆中,再通过栈的引用来使用对象,但对于简单的小的变量,用new显的繁琐麻烦,所以产生了基本类型2、有了基本类型,为什么还会产生包装类型:(1)什么是包装类:包装类型相当于将基本类型包装起来,使其具有对象的性质,并且可以添加属性和方法,丰富了基本类型的操作。(2)包装类型具有哪些好处:符合Java面向对象编程特征使用集合Collection就一定要用包装类型需要往ArrayList,HashMap放东西,int和double是放不进去的3、二者相互转换(1)int转换integerint i=0ineger ii=new integer(i)(2)integer转intinteger ii=new interger(0)int i=();4、二者的区别(1)基本类型直接声明而包装类型需使用new关键字来在堆中分配内存空间(2)基本类型存储在栈中而包装类型存储在堆中通过引用(3)基本类型初始值,int为0,boolean为false。包装类型初始值为null(4)基本类型直接赋值使用就好,包装类型需要在集合如Collection、map时会使用什么是自动拆装箱?自动装箱: 就是将基本数据类型自动转换成对应的包装类。自动拆箱:就是将包装类自动转换成对应的基本数据类型。自动装箱都是通过包装类的valueOf()方法来实现的.自动拆箱都是通过包装类对象的xxxValue()来实现的。Integer 的缓存机制?当使用自动装箱的时候,也就是将基本数据类型传递给对象类的时候触发自动装箱。这个时候java虚拟机会创建一系列的整数并且缓存到一个数组中以便直接使用,这就是缓存策略→ String字符串的不可变性JDK 6 和 JDK 7 中 substring 的原理及区别?JDK6中,String是通过字符数组实现的,String类包含三个成员变量:char value[], int offset,int count。他们分别用来存储真正的字符数组,数组的第一个位置索引以及字符串中包含的字符个数。JDK6中的substring导致的问题如果字符串很长,但是只需substring切割很短的一段。这可能导致性能问题,因为只需要的是一小段字符序列,却引用了整个字符串(因为这个很长的字符数组一直被引用,而无法被回收,就可能导致内存泄露)。在JDK 6中,一般用以下方式来解决该问题,原理其实就是生成一个新的字符串并引用他。x = (x, y) + ""JDK 7 中的substring上述问题,在JDK7中得到解决。在jdk 7 中,substring方法会在堆内存中创建一个新的数组。//JDK 7public String(char value[], int offset, int count) {//check = (value, offset, offset + count);}public String substring(int beginIndex, int endIndex) {//check boundaryint subLen = endIndex - beginIndex;return new String(value, beginIndex, subLen);}replaceFirst、replaceAll、replace 区别?· replace(CharSequence target, CharSequence replacement) ,用replacement替换所有的target,两个参数都是字符串。· replaceAll(String regex, String replacement) ,用replacement替换所有的regex匹配项,regex很明显是个正则表达式,replacement是字符串。· replaceFirst(String regex, String replacement) ,基本和replaceAll相同,区别是只替换第一个匹配项。String s = "";((".", "#")); // replace将字符串中的. 都替换为 #((".", "#")); // replaceAll 用到了正则表达式,其中. 是任意字符的意思,所以结果是字符串全部替换为#((".", "#")); // replaceFirst 用到了正则表达式, 其中. 是任意字符的意思,所以第一个字符被#号代替(("\\.", "#")); // 正则表达式中双杠是原生字符串的意思,所以结果是字符串中第一个. 被#代替得到String 对“+”的重载?String 类底层是一个 final 修饰的 char 类型数组,意味着 String 类的对象是不可变的,所以 String 对象可以共享。String 类中的每一个看起来会修改 String 值的方法,实际上都是创建了一个全新的 String 对象,用来包含修改后的字符串内容,这也可以说明 String 对象具有只读的属性。String fruit = "Apple," + "Pear," + "Orange";编译器会创建一个 StringBuilder 对象,用来构造最终要生成的 String,并为每一个字符串调用一次 StringBuilder 中的 append() 方法,因此代码一共执行了三次 append() 方法。最后调用 toString 生成最终的结果,并保存为 fruit。字符串拼接的几种方式和区别?1.无论如何直接用“+”号连接字符串都是最慢的2.在拼接少数字符串(不超过4个)的时候,concat效率是最高的3.多个字符串拼接的时候,StringBuilder/StringBuffer的效率是碾压的4.在不需要考虑线程安全问题的时候,使用StringBuilder的效率比StringBuffer更高 和 的区别?()可以应用到任何数据类型,且不会有异常报出。()表示先讲int转换成Integer型,然后再将Integer转换成String型。总的来说 ()用的比较多(应用的数据类型无限制),但是基本上每个JAVA对象都会有一个toString方法。2个方法的运行结果还是一样的,只是原理(运行过程)不一样.switch 对 String 的支持?java中switch支持String,是利用String的hash值,本质上是switch-int结构。并且利用到了equals方法来防止hash冲突的问题。最后利用switch-byte结构,精确匹配。字符串池、常量池(运行时常量池、Class 常量池)、intern?1.全局常量池在每个VM中只有一份,存放的是字符串常量的引用值。常量池是在编译的时候每个class都有的,在编译阶段,存放的是常量的符号引用。3.运行时常量池是在类加载完成之后,将每个class常量池中的符号引用值转存到运行时常量池中,也就是说,每个class都有一个运行时常量池,类在解析之后,将符号引用替换成直接引用,与全局常量池中的引用值保持一致。→ 熟悉 Java 中各种关键字transient、instanceof、final、static、volatile、synchronized、const 原理及用法transient:修饰变量,在实现Serializable接口的类中,可以避免持久化,但是如果实现的是Externalizable接口,那么手动序列化会无视 transient。instanceof:对象 instanceof 类,检查对象是否是这个类或者这个类的子类的对象,返回布尔值。volatile:轻量级的线程安全的实现,但是要注意用法,某些场合不适合用volatile,保证可见性,有序性synchronized:线程安全的修饰符,锁住对象的访问权限。final:final修饰类:该类不可继承final修饰方法:该方法不能被子类覆盖(但它不能修饰构造函数)final修饰字段属性:属性值第一次初始化后不能被修改使用final可以提高程序执行的效率,将一个方法设成final后编译器就可以把对那个方法的所有调用都置入“嵌入”调用里。static:static修饰成员函数则该函数不能使用this对象static不能修饰构造函数、函数参数、局部成员变量static修饰成员字段则当类被虚拟机加载时按照声明先后顺序对static成员字段进行初始化。static修饰语句块:当类被虚拟机加载时按照声明先后顺序初始化static成员字段和static语句块static所修饰的方法和字段只属于类,所有对象共享,java不能直接定义全局变量,是通过static来实现的。java中没有const,不能直接定义常量,是通过static final组合来实现的。专注java职场经验,技术分享,欢迎关注公众号:程序秘籍

1. 基础理论型论文。这类论文的研究对象是相关领域的概念、理论,而非实践规律。研究方法主要是在已有相关理论、思想的基础上,综合运用归纳、推演等推理方式,过一系列抽象思维获得关于特定主题的认识成。础理论型论文要具有相关学科的雄厚理论基础,乃常不道用于刚刚涉足论文写作的初学者。

2. 应用研究型论文。这类论文关注实践,常是在综合运用相关理论的础上,对实践中热点、焦点、难点、疑点问题(尤其是新问题)进行分析,找出问题产生的原因,并提出具体的操作策略或建议。如果将理论研究型论文比作科学家进行的研究,那么应用研究型论文就更像是大师的作品,它旨在解决现实问题,推进理论白实践转化。

3. 学术争论型论文。这类论文通常针对他人公开发表的文章或见解提出不同的看法,进行基于充分论据的商榷,看重揭示他人研究的不足或错误之处。学术争论型论文可以明确争论的对象,如某某专家的某一篇文章,也可以泛指某类观点,争论的主题可以是理论问题,也可以是实践问题,当然,学术争论不是各说各话的争吵,对科学性、逻辑性、严密性的要求更高。最后,学术争论型论文必须“对事不对人”,不能借论文对作者进行恶意攻击。

4. 调查报告型论文。这类论文以调查为础,常从现实中的某一问题出发,通过深入的调查、访谈获取数据,进而进行整理、加工分析,并将调查结果进行科学的呈现。调查报告型论文必须包含大量的原始数据,“用数据说话”是此类文章的重要特点。

5. 文献综述型论文。这类论文以他人研究成果为研究对象,所谓“综”就是归纳,必须对占有的大量素材进行归纳整理、系统介绍和综合分析,使同领城的研究成果更加层次分明、逻辑清晰。所谓“述”就是评述,要对所写主题进行较为全面、深入、系统的论述或评论,进而发表自己的见解。

参考资料:《什么是论文?论文的特点和类型有哪些》

你在大学里学的是知识吗?你学的是思维方式!今天知识很廉价,b站里各种授课,各种网课。大学里的教材都很陈旧,都是好多年前的东西了。当你踏上社会,用人单位用的是好多年前的旧知识?书本上有的才会要求你做?全都不是,全都是你没接触过,没学过的东西。你在大学里面学的唯一有用的就是你对于你的专业的思维方式。运用你的编程思维方式,去解决工作上的一个又一个项目。程序员的思维方式是什么?面相对象+数据结构+算法。你告诉我,你用面相过程来先毕业论文?你弄个文凭是用来干嘛的?你4年大学学的是啥?我是面试官,我问你毕业设计写的是啥,你就给我这个?

相关百科

热门百科

首页
发表服务