自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 哈尔滨工业大学2019年《形式语言与自动机》期末试题

哈尔滨工业大学2019年《形式语言与自动机》期末试题Design a DFA for the language L = {w∈{0,1}* | w contains both 01 and 10 as substrings}.Design a NFA within four states for the language {a}*∪{ab}*.Design regular exp...

2019-07-03 20:58:44 8931 2

原创 软件构造Lab4实验总结

本实验的主要工作是找到程序容易出错的地方,并且尽力避免程序的崩溃。主要找到了以下几种容易出错的场合:1.trackgame的错误处理:(1).如果game标签没有找到或者不合法,则抛出异常game type error.(2).如果num of track标签没有找到或者不合法,则抛出异常num of track error.(3).对于运动员的信息,如果某行数据的格式不合法,将忽略该数据...

2019-06-03 16:29:33 410

原创 软件构造Lab2实验总结

本实验当中最主要的工作是实现一个图结构, 并要求使用泛型实现。各个方法的实现过程:public boolean add(L vertex)判断以vertex为名称的点是否已经存在。若存在,不执行任何操作。否则在vertices中增加该节点。public int set(L source, L target, int weight)首先区分weight是否等于零。不等于0时再判断点是否已经...

2019-06-03 16:23:33 303

原创 软件构造Lab1实验总结

本次实验是在对Java语言几乎完全不了解的情况下进行的,因此挑战性也很大。其中Turtle Graphics是较新颖的部分。通过对光标的移动和旋转完成一系列图形的绘制。在本部分中我实现了五角星的绘制。将以下语句重复五次即可完成。turtle.forward(100);turtle.turn(calculateRegularPolygonAngle(10));generate magic...

2019-06-03 16:07:42 285

原创 Java文本输入输出

Java能实现文本文件输入输出的类种类繁多,正确使用的难度极大。本文旨在总结各种IO的实现方法。以下六个函数分别完整实现了六种IO,希望对大家有所帮助。package apis;import java.io.*;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;public class Readfile {/...

2019-06-03 15:55:02 641

原创 软件构造Lab5实验总结

总体来说Lab5的工作量也是十分巨大的,其中工作量最大的是利用CheckStyle对代码的风格进行修改。在第一次运行CheckStyle时报出了大概5000多个警告,着实令人生畏。但事实上95%的错误可以通过自动格式化(ctrl+shift+F)和自动替换tab字符解决。主要修改的问题有:1.在方法与方法之间添加一行空行2.方法的大括号不应独立成行3.多个参数之间添加空格,防止过于密集...

2019-06-03 15:22:15 232

原创 软件构造Lab3实验总结

本次实验是软件构造课程当中工作量最大,且最为复杂的一个。主要工作是实现一个多轨道系统,在这个系统的基础上完成三个应用。track gameatom structuresocial network circle三种应用都具有一定的多轨道结构。track game 中的轨道是跑道, atom structure当中是不同的原子轨道,social network circle中的轨道承载着不同亲...

2019-06-03 15:13:22 275

原创 软件构造Lab6实验总结

本次实验的主题是多线程编程。多线程机制能充分利用多核处理器的处理能力,提升软件性能。但本实验中不是侧重性能上的提升,而是通过构建一个模拟程序来更深入地理解并发编程的思维方式。本次实验中最重要的是monkey类的设计。我为猴子设计了这样一个工作流程:在出生之前,猴子先等待适当的秒数。然后不断试图寻找梯子。找到梯子以后再不断前进,直到到达终点。其中后面两步是循环进行的。即如果操作进行失败,就不停...

2019-06-03 15:07:36 483

原创 对于软件构造课程的建议

软件构造课程是一门较为新颖的课。通过对Java编程、设计模式、多线程编程、性能调优、版本控制系统等知识的学习,使我了解到如何构造一个规模较大的软件,以及如何在构造软件时考虑到日后的维护升级需求。事实上,有很多精力都花费到了对软件的维护而不是开发中,这就要求在开发软件的过程中用好一系列技术,并且具有长远的眼光。在这一学期中,我通过动手实践,不仅提升了编程能力,也树立了更加科学合理的编程理念,总而言之...

2019-06-03 14:59:34 268

原创 Java设计模式总结

Java中部分设计模式的总结Strategy模式:使某个类拥有一系列接口变量,用一系列方法类来实现接口以实现其中的相关算法。创建类的时候指定需要使用哪些具体的方法类来给接口变量赋值,即可达到代码重用的目的。Observer模式:某对象状态变化时,通知所有的订阅者。这个对象要拥有所有订阅者的列表。该对象实现IObservable接口,内部有notify add remove等方法,而订阅者实...

2019-05-28 22:04:07 98

原创 JAVA并发编程的知识要点

JAVA并发编程知识要点JAVA多线程多线程和多进程多线程共享数据更为方便,容易管理,容易切换。多线程仍然属于一个程序。Thread.sleep()使当前进程休眠,毫秒为单位。多线程允许多个代码同时运行。多线程的实现继承Java.lang.Thread类,实现run方法实现java.lang.Runnable接口,实现run方法启动:start方法,会以新进程的方式调用run...

2019-05-19 21:57:55 132

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除