自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java中的备忘录模式

备忘录模式就是记住对象的每一步的状态,并且能够随时回滚。1.组成部分1.Originator需要备份的对象。可以通过自己的方法产生备忘录Memento。2.Memento备忘录,记录Originator的历史状态。3.Caretaker用于统一管理Memento对象(Originator每一次进行操作,就会生成一个Memento对象),以及提供恢复功能。2.备忘录模式实例public class Originator { private State state = State1.inst

2020-07-11 21:03:24 129

原创 Java中的迭代器模式

由于本人对迭代器模式不是很熟,所以在此实践了一下。在这里给出迭代器模式的概念以及应用的实例。1.迭代器模式的概念迭代器模式主要是通过委托来完成迭代的。主类(拥有迭代对象(list,set等))要完成Iterable接口,目的是为了获得方法iterator()来得到迭代器对象;迭代器类要完成Iterator接口,目的是为了获得next(),hasNext()等方法。这两个类都完成之后,主类通过iterator()来获得对该类迭代器的引用。对迭代器引用进行委托得到一系列的操作。2.迭代器模式的实例我们

2020-07-06 19:37:37 165

原创 Java中集合类的排序 Comparator与Comparable

Comparator与Comparable的功能都是对一个集合类进行排序,但是Comparable是内部排序接口,Comparator是外部排序接口。简单的说,Comparable是利用的继承的特性,Comparator是利用了委托的特性,从单一责任原则的角度出发,建议选择用Comparator进行排序,而且在更改的时候还能直接对排序器进行修改,增强了可扩展性。1.Comparable我们建立一个Person类,然后需要按年龄对每一个Person对象进行排序。利用Comparable接口的话就要对Per

2020-07-05 23:44:06 238

原创 面向复用的设计模式(结构模式和行为模式)

总览:结构模式:适配器模式:用于匹配不协调的接口的类。装饰模式:动态地向一个类中的一个存在的对象添加或重写新的行为。门面模式:为一堆庞大的代码提供一个简化的接口。行为模式:策略模式:举个例子,动物的叫声,猫和狗和其他动物的叫声都不一样,让系统根据对象的差别来正确地发出叫声就是策略模式。模板模式:一些共性的行为就放在一起,不同的行为就在各个子类中实现。1.行为模式1.1适配器模式...

2020-04-22 20:17:57 132

原创 一些Class的相关知识

在Java中,所有的类型转换都是在运行时进行正确性检查的。这里就用到了RTTI:在运行时,识别一个对象的类型。1.一些重要的class函数Class.forName(String s)s为包含目标类文件名。返回一个Class对象的引用。(在调用forName同时,调用的类就已经进行初始化了)注:在传递给forName的字符串中,必须包含包名。Class.getInterfaces()...

2020-04-19 17:31:26 121

原创 正则表达式浅显的介绍

在这里主要介绍java中的正则表达式。在其它语言中,\表示在正则表达式中插入一个普通的反斜线;在Java中,\表示后面即将插入一个正则表达式。例如:如果想插入一位数字,那么正则表达式应该是\d;如果想插入一个普通的反斜线,应该是\\。但是换行符和制表符只需要\n,\t。另外如果想插入-,就直接-;+号需要\+。1.split()方法String类自带的一个有用的正则表达式的工具,**能够将字...

2020-04-18 09:53:49 168

原创 程序的可复用性概念

面向复用编程:开发出可复用的软件。基于复用编程:利用已有的可复用软件搭建应用系统。1.可复用软件优点:1.很大的适应性。2.降低成本和开发时间。3.充分的测试,具有可靠性。4.标准化,一致化。缺点:无法拿来就用,需要适配。例如:需要添加额外的函数,舍弃一些多余的函数,以及修改一些操作的方式。2.如何衡量“可复用性”根据复用软件被用到的频繁程度以及实现一个复用软件所需要的代价有...

2020-04-15 23:06:01 1710

原创 面向对象的编程(OOP)

OOP明显的特征:封装与信息隐藏(Encapsulation and information hiding)继承与重写(Inheritance and overriding)多态,子类型,重载(Polymorphism,subtyping and overloading)静态与动态分派(Static and Dynamic dispatch)1.基本概念类成员变量和类方法(static...

2020-04-05 09:40:59 108

原创 Java的抽象数据型

除了编程语言所提供的基本数据类型和对象数据类型,程序员可定义自己的数据类型。1数据抽象定义:由一组操作所刻画的数据类类型。例:一个number可以进行add和multiply。传统的类型关注于数据的具体表示。抽象类型强调作用于数据类型的操作。程序员和用户不必关注数据是如何存储的,是需要设计和使用操作即可。ADT是由操作定义的,与其内部是如何实现的无关。2.类型之间的分类以及操作jav...

2020-04-04 14:00:25 459

原创 Java基础知识(一)

1.Java中的数据类型1.1.基本数据类型(primitive type)包括:int, long, char, byte, short, float, double, boolean。只有值,没有ID。是**不可变(immutable)**的。在栈中分配内存。1.2.对象数据类型(object type)例如:String,BigInteger,Classes,interfaces,...

2020-03-29 15:09:22 79

原创 java初学者获得的一些知识点

范围:java编程思想 第五章~第十一章1.初始化与清理1.1.类的初始化java中,当要创建一个新的类的时候,一定要首先初始化它(initialize())。所以需要构造器:来初始化新创造了类。创造完构造器后,每次新创造一个对象,系统会自动调用构造器,而不需要我们自己去调用。注:构造器的名字要和类的名字一样,而且不需要返回值。如果没有构造器的话,java文档通常会使用术语无参构造器。...

2020-03-22 11:13:03 101

原创 学C学一半的java初学者的收获

1.简述应学校老师的要求,开始了一周更新一个博客的学习之旅。因为本人是大二转到计算机专业的,在大二上学习了一段时间的C语言,感觉掌握了一些编程的技巧,但是对于制作专业的软件还是很陌生。现在大二下的课程开始了,在软件构造的课程中要求用java编程,于是便用几天时间看了一下java,虽然才看了一点,但是颇有收获,于是便将自己的收获陈列如下。2.陌生的专用名词1.OOP:面向对象程序设计(java...

2020-02-28 13:33:29 358

原创 HITICS-2019大作业报告

**HITICS-2019大作业报告**摘 要摘要是论文内容的高度概括,应具有独立性和自含性,即不阅读论文的全文,就能获得必要的信息。摘要应包括本论文的目的、主要内容、方法、成果及其理论与实际意义。摘要中不宜使用公式、结构式、图表和非公知公用的符号与术语,不标注引用文献编号,同时避免将摘要写成目录式的内容介绍。关键词:预处理,编译,汇编,链接,进程管理,存储管理,I/O管理本文通过介...

2019-12-23 12:30:48 503 2

空空如也

空空如也

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

TA关注的人

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