java课程设计报告java程序设计实验报告怎么写
java课程设计报告 时间:2021-08-12 阅读:(
)
哪有java课程设计论文?
摘 要】该程序是一个图形界面的java文档编辑器,其界面主要采用了awt包, 程序实现了文本编辑器的基本功能有:新建文件、打开文件、文件保存、文件另存为、剪切、复制、粘贴、删除、查找/替换、改变字体大小,另外还利用Time类的schedule方法实现了文件的定时自动更新功能,并创建备份文件,由于该编辑器是用的awt包,所以在技术上没有实现将Java的关键字以不同颜色显示功能。
【关键字】java 编辑器
一、概要设计
Java程序编辑器是:图形界面、线程、流与文件等技术的综合应用。
图形界面的实现:考虑到简单、实用、高效等特点,就选择了AWT来完成实现,在选择组件上,文本编辑区就选用了TaxtArea作为主要的部件。
线程实现文件自动保存:在相关的参考书上查阅到在Time类中有一个schedule方法可以在后台自动完成一定的功能,而且调用起来相当简单,于是就用了Time类中的schedule方法来实现文件自动保存及备份功能。
文件操作的实现:利用了字符文件流FileReader和FileWriter类来实现。
由于Java的特性,可能用任何一个编辑器来编辑,于是就将Windows中的记事本作为模仿对象,根据实现情况删减了其中的一些功能,如自动换行,设置字体,打印等功能。
在设计类的时候,考虑到简单明了,就用了两个类,一个主类和一个默认属性类作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。
主类完成对象的实例化及显示。
这们设计的优点是:条理清晰,容易理解,容易修改。
这样设计的缺点是:不利于共享类中的方法。
2.2、程序中所用类说明
(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 toolKit
Clipboard 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=JOptionPane.INFORMATION_MESSAGE;
//提示对话框类型
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 类java版的课程设计
#include"stdio.h"
#include"stdlib.h"
typedef struct pointer
{
int dat;
struct pointer *link;
}pointer;
void readdata(pointer *head)
{
pointer *p;
int tmp;
printf("input data(-999 for end):");
scanf("%d",&tmp);
while(tmp!=-999)
{
p=(pointer *)malloc(sizeof(struct pointer));
p->dat=tmp;
p->link=head->link;
head->link=p;
scanf("%d",&tmp);
}
}
void disp(pointer *head)
{
pointer *p;
p=head->link;
while(p!=NULL)
{
printf("%d ",p->dat);
p=p->link;
}
printf("
");
}
void bing(pointer *head1,pointer *head2,pointer *head3)
{
pointer *p1,*p2,*p3;
p1=head1->link;
while(p1!=NULL)
{
p3=(pointer *)malloc(sizeof(struct pointer));
p3->dat=p1->dat;
p3->link=head3->link;
head3->link=p3;
p1=p1->link;
}
p2=head2->link;
while(p2!=NULL)
{
p1=head1->link;
while((p1!=NULL)&&(p1->dat!=p2->dat))
p1=p1->link;
if(p1==NULL)
{
p3=(pointer *)malloc(sizeof(struct pointer));
p3->dat=p2->dat;
p3->link=head3->link;
head3->link=p3;
}
p2=p2->link;
}
}
void jiao(pointer *head1,pointer *head2,pointer *head3)
{
pointer *p1,*p2,*p3;
p1=head1->link;
while(p1!=NULL)
{
p2=head2->link;
while((p2!=NULL)&&(p2->dat!=p1->dat))
p2=p2->link;
if((p2!=NULL)&&(p2->dat=p1->dat))
{
p3=(pointer *)malloc(sizeof(struct pointer));
p3->dat=p1->dat;
p3->link=head3->link;
head3->link=p3;
}
p1=p1->link;
}
}
void cha(pointer *head1,pointer *head2,pointer *head3)
{
pointer *p1,*p2,*p3;
p1=head1->link;
while(p1!=NULL)
{
p2=head2->link;
while((p2!=NULL)&&(p2->dat!=p1->dat))
p2=p2->link;
if(p2==NULL)
{
p3=(pointer *)malloc(sizeof(struct pointer));
p3->dat=p1->dat;
p3->link=head3->link;
head3->link=p3;
}
p1=p1->link;
}
}
main()
{
pointer *head1,*head2,*head3;
head1=(pointer *)malloc(sizeof(struct pointer));
head1->link=NULL;
head2=(pointer *)malloc(sizeof(struct pointer));
head2->link=NULL;
head3=(pointer *)malloc(sizeof(struct pointer));
head3->link=NULL;
printf("输入集合1:
");
readdata(head1);
printf("输入集合2:
");
readdata(head2);
printf("集合1为:
");
disp(head1);
printf("集合2为:
");
disp(head2);
printf("集合1与集合2的并为:
");
bing(head1,head2,head3);
disp(head3);
head3->link=NULL;
printf("集合1与集合2的交为:
");
jiao(head1,head2,head3);
disp(head3);
head3->link=NULL;
printf("集合1与集合2的差为:
");
cha(head1,head2,head3);
disp(head3);
}java课程设计?
学海网里有很多类似的论文
例如: /docs/198643.html
图形编辑器,java,课程设计
1.课程设计的目的:
在当今时代,人们越来越多依靠计算机来解决各种各样的难题。
计算机已成为人们生活工作中必不可少的元素。
同时,计算机技术处于高速发展的阶段,各类新式的计算机技术层出不穷,不断面世。
因此在当今,学习好计算机信息技术已是我们学习中的重中之重。
图形编辑是人们生活中经常需要的软件程序。
通过此次课程设计,巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、Editplus、Eclipse、JCreator等开发工具的运用,拓宽常用类库的应用。
字数:3000左右
页数:12-20页(正文)急求 日历记事本课程设计报告 java编写
日历记事本课程设计报告
java编写
/*
说明:主程序
*/
import java.util.Calendar;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.Hashtable;
public class CalendarPad extends JFrame implements MouseListener
{
int year,month,day;
Hashtable hashtable;
File file;
JTextField showDay[];
JLabel title[];
Calendar 日历;
int 星期几;
NotePad notepad=null;
Month 负责改变月;
Year 负责改变年;
String 星期[]={"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
JPanel leftPanel,rightPanel;
public CalendarPad(int year,int month,int day)
{
leftPanel=new JPanel(); //左边日历...........
JPanel leftCenter=new JPanel();
JPanel leftNorth=new JPanel();
leftCenter.setLayout(new GridLayout(7,7));
rightPanel=new JPanel();
this.year=year;
this.month=month;
this.day=day;
负责改变年=new Year(this);
负责改变年.setYear(year);
负责改变月=new Month(this);
负责改变月.setMonth(month);
title=new JLabel[7];
showDay=new JTextField[42];
for(int j=0;j<7;j++)
{
title[j]=new JLabel();
title[j].setText(星期[j]);
title[j].setBorder(BorderFactory.createRaisedBevelBorder());
leftCenter.add(title[j]);
}
........
看下是不是收到了啊
额外人提问java程序设计实验报告怎么写
实验报告书写要求
实验报告原则上要求学生手写,要求书写工整。
若因课程特点需打印的,标题采用四号黑体,正文采用小四号宋体,单倍行距。
纸张一律采用A4的纸张。
实验报告书写说明
实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。
sparkedhost怎么样?sparkedhost主机。Sparkedhost于2017年7月注册在美国康涅狄格州,2018年收购了ClynexHost,2019年8月从Taltum Solutions SL收购了The Beast Hosting,同年10月从Reilly Bauer收购了OptNode Hosting。sparkedhost当前的业务主要为:为游戏“我的世界”提供服务器、虚拟...
外贸主机哪家好?抗投诉VPS哪家好?无视DMCA。ParkinHost今年还没有搞过促销,这次parkinhost俄罗斯机房上新服务器,母机采用2个E5-2680v3处理器、128G内存、RAID10硬盘、2Gbps上行线路。具体到VPS全部200Mbps带宽,除了最便宜的套餐限制流量之外,其他的全部是无限流量VPS。ParkinHost,成立于 2013 年,印度主机商,隶属于 DiggDigi...
一年一度的黑色星期五和网络星期一活动陆续到来,看到各大服务商都有发布促销活动。同时RAKsmart商家我们也是比较熟悉的,这次是继双十一活动之后的促销活动。在活动产品中基本上沿袭双11的活动策略,比如有提供云服务器七折优惠,站群服务器首月半价、还有新人赠送红包等活动。如果我们有需要RAKsmart商家VPS、云服务器、独立服务器等产品的可以看看他们家的活动。这次活动截止到11月30日。第一、限时限...
java课程设计报告为你推荐
raxrax是什么牌子hd4600CPU集成高性能HD4600核心显卡,好不好安全防护谈谈如何才能做好自身安全防护exe文件打不开exe文件怎么打不开了?密码设置电脑怎么设置密码充值卡充值移动手机充值卡如何充值?印度it为什么说在IT印度远远领先中国水平?比特币官方客户端比特币钱包官方客户端地址是什么?平均数计算器用计算器CASIO fx82 怎样计算平均数delphi2007Delphi2007哪里下载
域名查询系统 国外免费vps 如何查询ip地址 拜登买域名批特朗普 创宇云 主机合租 免费ftp站点 铁通流量查询 稳定免费空间 服务器合租 优酷黄金会员账号共享 网站加速软件 主机管理系统 湖南idc 工信部icp备案查询 群英网络 域名转入 万网注册 脚本大全 wannacry勒索病毒 更多