<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[gycool21的专栏]]></title><description><![CDATA[知识在于不间断的积累]]></description><link>https://blog.youkuaiyun.com/gycool21</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; gycool21]]></copyright><item><title><![CDATA[Java基础——Object类的三个常用方法]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/79955926</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/79955926</guid><author>gycool21</author><pubDate>Mon, 16 Apr 2018 08:43:49 +0800</pubDate><description><![CDATA[内容整理自《Java 核心技术 卷一》

Object类的简介 
java.lang.Object 
java.lang包在使用的时候无需显示导入，编译的时候由编译器自动导入 
Object类是所有类的超类，是java中唯一没有父类的类，如果没有明确地指出超类，Object就被认为是这个类的超类 
在Java中，只有基本类型不是对象 
Object类的方法 
equals方法() 
Object类...]]></description><category></category></item><item><title><![CDATA[String、StringBuilder，StringBuffer三者的区别]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/79896732</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/79896732</guid><author>gycool21</author><pubDate>Wed, 11 Apr 2018 14:55:29 +0800</pubDate><description><![CDATA[最近在指导新同事开发代码的时候，好多次问到String，StringBuilder，StringBuffer到底应该用哪个。我根据自己掌握的知识，以及在网上查找的资料，总结如下，请高手指正。

　　三者之间的区别主要是在两个方面，即运行速度和线程安全。


首先说运行速度，或者说是执行速度，在这方面运行速度快慢为：StringBuilder &amp;gt; StringBuffer &amp;gt; Strin...]]></description><category></category></item><item><title><![CDATA[设计模式（13）享元模式--结构型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/77461152</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/77461152</guid><author>gycool21</author><pubDate>Mon, 21 Aug 2017 22:09:18 +0800</pubDate><description><![CDATA[定义运用共享技术有效地支持大量细颗粒度对象的复用。系统只使用少量的对象，而这些对象都很相似，状态变化很小，可以实现对象的多次复用。角色抽象享元类(Flyweight)抽象享元类声明一个接口，通过它可以接受并作用于外部状态。在抽象享元类中定义了具体享元类公共的方法，这些方法可以向外界提供享元的内部数据（内部状态），同时也可以通过这些方法来设置外部数据（外部状态）具体享元类（ConcreteFlywei]]></description><category></category></item><item><title><![CDATA[设计模式（12）命令模式--行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/77108370</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/77108370</guid><author>gycool21</author><pubDate>Sat, 12 Aug 2017 21:25:27 +0800</pubDate><description><![CDATA[定义将一个请求封装为一个对象，从而使你可用不同的请求对客户进行参数化；对请求排队或记录请求日志，以及支持可撤销的操作。 
　①封装请求：抽象出需要执行的动作，封装成对象（有统一的接口）。 
　②参数化：可以用不同的命令对象，去参数化配置客户的请求。（即，将命令对象作为参数去供Invoker调用）。角色Invoker要求命令对象执行请求，通常会持有命令对象，可以持有很多的命令对象。这个是客户端真正触发]]></description><category></category></item><item><title><![CDATA[设计模式（11）组合模式--结构型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/77074272</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/77074272</guid><author>gycool21</author><pubDate>Thu, 10 Aug 2017 22:26:13 +0800</pubDate><description><![CDATA[定义允许你将对象组合为树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。角色抽象构件角色（component）是组合中的对象声明接口，在适当的情况下，实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component子部件。树叶构件角色(Leaf)在组合树中表示叶节点对象，叶节点没有子节点。并在组合中定义图元对象的行为。树枝构件角色（Composite）]]></description><category></category></item><item><title><![CDATA[设计模式（10） 迭代器模式--行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/76862316</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/76862316</guid><author>gycool21</author><pubDate>Mon, 07 Aug 2017 22:26:28 +0800</pubDate><description><![CDATA[定义迭代器模式（Iterator Pattern）:提供一种方法来访问聚合对象，而不用暴露这个对象的内部表示 
何时使用： 
    1）需要扩展一个类的功能，或给一个类增加附加责任。 
    2）需要动态的给一个对象增加功能，这些功能可以再动态地撤销。 
    3）需要增加一些基本功能的排列组合而产生的非常大量的功能，从而使继承变得    不现实。角色抽象迭代器(Iterator)抽象迭代器定]]></description><category></category></item><item><title><![CDATA[设计模式（9）装饰模式--结构型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/76560207</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/76560207</guid><author>gycool21</author><pubDate>Tue, 01 Aug 2017 22:17:36 +0800</pubDate><description><![CDATA[定义动态地给一个对象添加一些额外的职责。就增加功能来说，Decorator模式相比生成子类更为灵活。不改变接口的前提下，增强所考虑的类的性能。 
何时使用： 
    1）需要扩展一个类的功能，或给一个类增加附加责任。 
    2）需要动态的给一个对象增加功能，这些功能可以再动态地撤销。 
    3）需要增加一些基本功能的排列组合而产生的非常大量的功能，从而使继承变得    不现实。角色抽象构件]]></description><category></category></item><item><title><![CDATA[设计模式（8）观察者模式-行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/72858576</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/72858576</guid><author>gycool21</author><pubDate>Sun, 04 Jun 2017 13:39:57 +0800</pubDate><description><![CDATA[定义定义了对象之间的一对多依赖，这样一来，当一个对象改变状态时，它的所有依赖者都会收到通知并自动更新。角色抽象主题(ISubject)定义主题中的要实现的方法，包括保存所有的观察者，观察者注册，取消注册（增删）等。主题类（ConcreteSubject）实现了抽象主题中的具体方法。抽象观察者(IObserver)定义观察者要实现的方法，比如：更新，修改，回滚，显示等方法。观察者类（ConcreteO]]></description><category></category></item><item><title><![CDATA[软件开发应试人员考试试题（Java）]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/53080783</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/53080783</guid><author>gycool21</author><pubDate>Tue, 08 Nov 2016 11:48:21 +0800</pubDate><description><![CDATA[姓名：___________   电话：___________
以下信息有工作经验人员如实填写，应届毕业不填（时间从毕业参加工作算起）
从事Java开发时间____月   熟悉JavaScrip时间____月  
熟悉EXT开发时间____月    熟悉PDM开发时间____月
熟悉的数据库及时间（如SQLServer 3个月，可多填）___________________
一、    ]]></description><category></category></item><item><title><![CDATA[设计模式（7）模板模式--行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52860133</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52860133</guid><author>gycool21</author><pubDate>Thu, 20 Oct 2016 13:37:18 +0800</pubDate><description><![CDATA[定义

在一个方法中定义一个算法的骨架，而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下，重新定义算法中的某些步骤。

角色



类图

示例



引申]]></description><category></category></item><item><title><![CDATA[设计模式（6）状态模式--行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52849614</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52849614</guid><author>gycool21</author><pubDate>Wed, 19 Oct 2016 15:46:08 +0800</pubDate><description><![CDATA[定义



角色

Context: 环境类。可以包括一些内部状态。 
State: 抽象状态类。State定义了一个所有具体状态的共同接口，任何状态都实现这个相同的接口，这样一来，状态之间就可以互相转换了。 
ConcreteState: 具体状态类。具体状态类，用于处理来自Context的请求，每一个ConcreteState都提供了它对自己请求的实现，所以，当Context改变状态时行为也会]]></description><category></category></item><item><title><![CDATA[数字签名和数字证书是什么]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52837553</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52837553</guid><author>gycool21</author><pubDate>Mon, 17 Oct 2016 11:52:33 +0800</pubDate><description><![CDATA[今天，我读到一篇好文章。

它用图片通俗易懂地解释了，"数字签名"（digital signature）和"数字证书"（digital certificate）到底是什么。

我对这些问题的理解，一直是模模糊糊的，很多细节搞不清楚。读完这篇文章后，发现思路一下子就理清了。为了加深记忆，我把文字和图片都翻译出来了。

文中涉及的密码学基本知识，可以参见我以前的笔记。

=======]]></description><category></category></item><item><title><![CDATA[SQL语句优化技巧]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52808783</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52808783</guid><author>gycool21</author><pubDate>Thu, 13 Oct 2016 17:50:23 +0800</pubDate><description><![CDATA[1、应尽量避免在 where 子句中使用!=或<>操作符，否则将引擎放弃使用索引而进行全表扫描。2、对查询进行优化，应尽量避免全表扫描，首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断，否则将导致引擎放弃使用索引而进行全表扫描，如：select id from t where num is null可以在num上设置]]></description><category></category></item><item><title><![CDATA[设计模式（4）工厂方法模式--创建型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52798578</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52798578</guid><author>gycool21</author><pubDate>Thu, 13 Oct 2016 16:30:08 +0800</pubDate><description><![CDATA[细致的讲，工厂方法模式分为三种：简单工厂模式，工厂方法模式，抽象工厂模式]]></description><category></category></item><item><title><![CDATA[设计模式（3）门面模式--结构型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52798485</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52798485</guid><author>gycool21</author><pubDate>Wed, 12 Oct 2016 16:52:42 +0800</pubDate><description><![CDATA[门面模式：外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口，使得子系统更易于使用。 
三大角色： 
子系统角色：实现各个子系统的功能。门面角色和客户角色对其是透明的，它没有任何的信息和链接。 
门面角色：门面模式的核心。它被客户角色调用，其熟悉子系统的功能，且其内部根据客户角色的各种需求提供了不同的方法。 
客户角色：调用门面角色来实现所需的功能。在什么情况下使用门]]></description><category></category></item><item><title><![CDATA[设计模式（2） 策略模式--行为型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52769062</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52769062</guid><author>gycool21</author><pubDate>Wed, 12 Oct 2016 10:36:31 +0800</pubDate><description><![CDATA[策略模式：定义了算法族，分别封装起来，让它们之间可以互相替换，此模式让算法独立于使用算法的客户。组成 
环境类(Context):用一个ConcreteStrategy对象来配置。维护一个对Strategy对象的引用。可定义一个接口来让Strategy访问它的数据。 
抽象策略类(Strategy):定义所有支持的算法的公共接口。 Context使用这个接口来调用某ConcreteStrategy定]]></description><category></category></item><item><title><![CDATA[设计模式（1） 单例模式--创建型]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52765305</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52765305</guid><author>gycool21</author><pubDate>Sun, 09 Oct 2016 16:08:07 +0800</pubDate><description><![CDATA[单例模式：确保一个类只有一个实例，并提供一个全局访问点。]]></description><category></category></item><item><title><![CDATA[设计模式基础知识]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52754004</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52754004</guid><author>gycool21</author><pubDate>Sat, 08 Oct 2016 15:09:26 +0800</pubDate><description><![CDATA[从工作开始，导师就教育我要看设计模式。他推荐了两本书“大话设计模式”、“Head First 设计模式”，从中受益匪浅。基于以上理论，决定写下一些关于设计模式的知识，待将来可以快速的温习该方面的知识。我认为设计模式的基础知识包含两方面：1.六大原则 2.UML图 设计模式六大原则1.单一职责原则（Single Responsibility Principle）定义：不要存在多于一个导致类变更的原因。]]></description><category></category></item><item><title><![CDATA[FTP连接，上传，下载，删除文件方法]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52724946</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52724946</guid><author>gycool21</author><pubDate>Sun, 02 Oct 2016 23:31:03 +0800</pubDate><description><![CDATA[解决的两个问题 
1.设置连接超时时间，如下： 
ftp.setConnectTimeout(3*1000);//设置连接ftp超时时间3秒2.文件下载后，出现文件中中文乱码的情况，解决办法是，设置编码格式，如下： 
ftp.setFileType(FTP.BINARY_FILE_TYPE);//定义编码格式 防止文件中的中文出现乱码以下列出测试可用的源码： 
LoadConfigsimport j]]></description><category></category></item><item><title><![CDATA[华为机考试题（JAVA）]]></title><link>https://blog.youkuaiyun.com/gycool21/article/details/52679521</link><guid>https://blog.youkuaiyun.com/gycool21/article/details/52679521</guid><author>gycool21</author><pubDate>Tue, 27 Sep 2016 11:56:01 +0800</pubDate><description><![CDATA[试题1:字符子串拆分 
描述: 
给定两个字符串a和b，定义a*b标识两个字符串的链接。 
例如：a=”abc”,b=”def”,则a*b=”abcdef”。 
如果将连接看成乘法，则按照普遍的方法，一个非负整数的幂表示为： 
a的0次方：a^0=”” 
a的1次方：a^1=a 
a的2次方：a^2=a*a 
    …… 
a的n+1次方：a^(n+1)=a*(a^n)。输入： 
字符串s，长度在]]></description><category></category></item></channel></rss>