自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (2)
  • 收藏
  • 关注

原创 No such method

NoSuchMethod一个常见的原因是编译问题。通常可能是同名的类或者方法被覆盖掉。

2019-06-26 00:45:24 3080

原创 构建类设计模式比较

1.装饰模式与代理模式。二者在形式上表现比较相像,都是一个对象的行为实际上由另一个对象来实现。但他们在功能的侧重点不一样,代理强调实际的方法由代理类来完成,并且重点是到底执行不执行代理类的方法。而装饰模式强调的是对原有类功能的增强或者削弱,而不决定到底执行与否。2.装饰模式与适配器模式。二者在形式上就差别明显。装饰模式是通过继承和组合的方式来不断实现增强和削弱功能。而适配器模...

2019-06-11 01:09:51 112

原创 抽象工厂模式

抽象工厂模式用于需要生产产品族的情况。什么是产品族?产品族指的是同一约束下的多个产品,如宝马车的车门,车身可以是一个产品族,奔驰车的车门和车身可以是一个产品族。而奔驰和宝马则表示不同的产品等级。 抽象工厂需要生产车门和车身。而具体的奔驰车厂则需要生产奔驰车门,奔驰车身。具体的宝马车厂需要生产宝马车门和宝马车身。 也就是工厂需要生产整个产品族的方法。一个产品族里有多少种产品,...

2019-06-06 01:37:01 117

原创 工厂方法模式

将对象的创建交由工厂来完成,从而可以屏蔽掉对象创建的细节。 有抽象工厂,具体工厂;抽象产品,以及具体产品。 可以一个工厂生产多个产品。也可以每个具体的工厂生产某一个具体的产品。 工厂方法模式简化则成为简单工厂方法模式,又称为静态工厂模式。没有抽象工厂,只有一个具体的工厂,生成产品的方法为静态方法。...

2019-06-04 23:48:52 72

原创 桥梁模式

桥梁模式的作用是使抽象化和实现化分离。这样就可以做很好的扩展。这里的抽象与实现更多的是指对某种行为上层的实现与下层具体的实现。如工厂生产产品与具体的产品被生产出来。典型的是数据库连接的JDBC。对所有的关系型数据库是相同的界面,但是可以动态地连接不同的数据库。其实质就是抽象角色委托具体角色来连接不同的数据库。抽象角色可以对所有的数据库引擎发动指令,因为抽象角色并不直接与数据库交互,而是...

2019-06-03 22:53:43 78

原创 访问者模式

迭代器模式可以用来遍历具有相同接口的对象的容器,并对这些对象做某一类型的处理。那对于没有实现同一接口,并且对这些对象的操作也不同的情况,该怎么遍历呢?于是就有了访问者模式。 访问者模式就是用于对一个数据结构中不同类型的元素,进行不同的操作。比如搬家要对家里的家具和电器做不同的处理,家具扔掉,电器卖掉。 其实访问者模式中数据结构中的元素也会实现共同的接口或者也有共同的父类,这样...

2019-05-16 23:13:02 60

原创 备忘录模式

在实际的应用场景中,通常都会需要保存某一个时刻的状态。然后在需要的时候恢复到这个状态。如windows中的ctr+z,浏览器的退后,git中的回滚到某一个版本等等。备忘录模式就是为这种应用场景而生的。 备忘录模式,备忘的是什么,是状态,也就是一些值。 java是面向对象的,备忘录在java中的实现通常有三个类,Originator发起者类,Memento备忘录类,Cracke...

2019-05-15 23:04:12 94

原创 初识Oracle优化

Oracle优化遵循的是从上层往下层进行优化的顺序。一是因为表面上下层的瓶颈可能是由上层的原因引起的,二是因为下层的优化所需的成本更加高昂,比如购买更多的磁盘。从上往下依次的顺序是:1.减少应用负载。即是减少对数据库的逻辑请求,如优化SQL,调整业务逻辑,增加客户端的缓存,数据库的物理实现(索引,分区等)等。2.减少争用。主要是表内争用和共享内存争用,分别要使用表锁,闩锁等,这些都要消耗系...

2018-12-28 01:04:29 82

原创 ip学习

1.ip用来标识网络主机的逻辑地址。对应的,主机还有物理地址,比如以太网地址。ARP用来进行ip对物理地址的动态映射。2.ipv4用32bit来表示地址。形如点分十进制172.1.1.0。一般分为A,B,C,D,E几类地址。3.ip的32位又分割为网络号(前十六位),子网号和主机号。子网掩码(一般是32位表示)用来表示后十六位多少位用来表示子网号,多少位用来表示主机号。  子网掩码的得...

2018-12-20 00:16:06 246

原创 java io练习

1.java IO 可按IO方向分为输入,输出流。输出流有:outputStream,writer输入流:inputStream,reader 也可按读写单元分为字节,字符流。字节流:outputStream,inputStream字符流:writer,reader。2.使用上的一些注意点。a.注意要关闭流。b.字符流要flush。c.换行符"\r\n"。d...

2018-12-20 00:02:21 173

原创 算法与数据结构第一课

1.什么是数据结构?答:数据结构就是组织数据的形式。2.什么是算法?答:算法是操作数据的方式。3.数据结构与算法的关系?答:互相依赖的关系。没有算法来进行操作的数据结构没有任何作用。而算法也要作用在特定的数据结构之上。4.算法复杂度。答:评估算法的方式。我们的期望是写出运行快,占用空间小的程序。所以分为渐进时间复杂度和渐进空间复杂度。渐进时间复杂度简称时间复杂度,表...

2018-12-13 00:06:39 127

原创 java classLoader的学习

classLoader即类加载器,顾名思义,作用是用来加载java类的。   jvm中有三个加载器,分别是bootstrap ClassLoader,Extention ClassLoader,appClassLoader,前者依次是后者的parent,但bootstrap由于是用C++写的,并不是以java类型存在的,所以打印出来是null。这三个加载器分工不同,bootstrap主要用...

2018-12-04 19:23:18 99 1

原创 java类加载

类加载的过程:一:载入1.根据类的全名去读取该类的class文件的二进制字节流。2.分析该二进制流,并将其转为表示该类的信息的数据结构,存入方法区。3.产生该类的java.lang.Class的实例。二:链接1.verification:验证。检验该类的二进制的结构是否正确(如类型是否正确,属性如private,public等是否正确),若有问题,则抛出异常。2.p...

2018-12-03 19:50:40 84

原创 初学git

 编程,我还是个新人。所以我还在不停地学习一些新的工具,一些大家都早就用烂熟的工具。编程就有代码,有代码自然要管理。而我们熟悉的代码管理的工具有svn和git,git更新更强大,比如分支管理的强大。 工具首先当然是下载安装。然而官网上没有windows的版本,只好去github上下载。 安装完后,在相应的目录右键,点击git bash即可看见命令行窗口出来。 接下来就应该学习git的一些常见命令了...

2018-04-18 22:02:12 84

空空如也

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

TA关注的人

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