<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Save_Helot的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Save_Helot</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Save_Helot]]></copyright><item><title><![CDATA[线程池相关]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/53010601</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/53010601</guid><author>Save_Helot</author><pubDate>Wed, 02 Nov 2016 18:47:30 +0800</pubDate><description><![CDATA[上图为线程池的处理流程原理。




提交任务有两种，执行execute和sumbit有返回future对象
Executor：是Java线程池的顶级接口
Executors：是一个类，提供了不同的静态方法。用于生成不同类型的线程池。


ThreadPoolExecutor的七个参数：
1.核心线程池的大小
2.最大线程池的大小
3.线程大于核心线程时。空闲任务等待分配]]></description><category></category></item><item><title><![CDATA[AQS框架实现类学习]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/53010413</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/53010413</guid><author>Save_Helot</author><pubDate>Wed, 02 Nov 2016 18:19:43 +0800</pubDate><description><![CDATA[CountDownLatch：允许一个或者多个线程等待其他线程完成操作
/**
 * 
 * 
 * @author jinxindong 2016年11月1日 上午9:33:46
 * @version V1.0
 */
public class CountDownLatchDemo {
	
	final static SimpleDateFormat sdf = new SimpleDate]]></description><category></category></item><item><title><![CDATA[ConcurrentHashMap总结]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/53010213</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/53010213</guid><author>Save_Helot</author><pubDate>Wed, 02 Nov 2016 17:51:39 +0800</pubDate><description><![CDATA[ConcurrentHashMap总结]]></description><category></category></item><item><title><![CDATA[123]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/52983426</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/52983426</guid><author>Save_Helot</author><pubDate>Mon, 31 Oct 2016 16:25:49 +0800</pubDate><description><![CDATA[http://ifeve.com/basic-thread-synchronization-4/


http://geek.youkuaiyun.com/news/detail/110921  





http://lib.youkuaiyun.com/base/java/structure]]></description><category></category></item><item><title><![CDATA[【Java进阶八】匿名内部类]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51835133</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51835133</guid><author>Save_Helot</author><pubDate>Tue, 05 Jul 2016 22:27:14 +0800</pubDate><description><![CDATA[上篇文章已经对内部类做了一个比较详细的归纳。对用法和区别做了论述。站着面试的角度说，绰绰有余。接下来我们要分析的是匿名内部类的使用、匿名内部类要注意的事项、如何初始化匿名内部类、匿名内部类使用的形参为何要为final。匿名内部类的使用 
  对于匿名内部类的使用它是存在一个缺陷的，就是它仅能被使用一次，创建匿名内部类时它会立即创建一个该类的实例，该类的定义会立即消失，所以匿名内部类是不能够被重复使用]]></description><category></category></item><item><title><![CDATA[【Java进阶七】内部类]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51834926</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51834926</guid><author>Save_Helot</author><pubDate>Tue, 05 Jul 2016 21:54:21 +0800</pubDate><description><![CDATA[内部类 
将一个类定义在另一个类的内部，就是内部类。 
内部类是一个非常有用但又比较难以理解使用的类。笔者没怎么使用过内部类，所以这里也是吹吹逼，写写理论了。但是对于面试还是很有用的。为什么使用内部类 
java编程思想中说道：使用内部类最吸引人的原因是：每个内部类都能独立的继承一个（接口的）实现，所以无论外围类是否已经继承了某个（接口的）实现，对于内部类都没有影响。在程序设计中，有时候会存在一些使]]></description><category></category></item><item><title><![CDATA[【Java进阶六】static关键字]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51824449</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51824449</guid><author>Save_Helot</author><pubDate>Mon, 04 Jul 2016 22:53:29 +0800</pubDate><description><![CDATA[static代表什么 
在Java中并不存在全局变量的概念。但是我们可以通过static来实现一个“伪全局”的概念。在Java中static代表“全局”或者“静态”的意思，用来修饰成员变量和成员方法，当然也可以修饰代码块。Java把内存主要分为栈内存和堆内存以及方法区。栈内存主要存放一些基本类型变量、数组和对象实例的引用。堆内存主要存放一些对象的实例。在jvm加载一个类的时候，若该类存在static]]></description><category></category></item><item><title><![CDATA[【Java进阶五】对象序列化和拷贝]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51819602</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51819602</guid><author>Save_Helot</author><pubDate>Mon, 04 Jul 2016 11:20:07 +0800</pubDate><description><![CDATA[Java拷贝问题 
Java中有个接口叫做Cloneable，实现该接口的类都具有克隆（被拷贝）的能力。拷贝的话在性能方面会比我们直接new一个对象的性能要好，特别是在大对象的生成上，性能提升非常明显。原因是拷贝是在内存中进行浅拷贝。浅拷贝 
浅拷贝的基本规则如下：
基本类型 
如果变量是基本，则拷贝变量的值，比如：int、float等
对象 
如果变量是一个实例对象，则拷贝其地址的引用。也就是说拷]]></description><category></category></item><item><title><![CDATA[【Java进阶四】抽象类和接口]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51817275</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51817275</guid><author>Save_Helot</author><pubDate>Sun, 03 Jul 2016 22:05:59 +0800</pubDate><description><![CDATA[抽象类 
抽象类是在定义的时候使用abstract关键字修饰的类。抽象类要注意以下几点：
抽象类不能被实例化，实例化工作应该在子类完成。
抽象方法必须由子类来进行重写。
只要包含一个抽象方法的类，他就必须是抽象类，不管是否含有其他正常的方法。
子类的抽象方法不能和抽象类的抽象方法同名
abstract不能和final并列修饰同一个类
abstract不能和private、static、final并列]]></description><category></category></item><item><title><![CDATA[【Java进阶三】理解多态]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51816403</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51816403</guid><author>Save_Helot</author><pubDate>Sun, 03 Jul 2016 19:05:38 +0800</pubDate><description><![CDATA[面向对象编程的三大特性：封装、继承和多态。
封装实现了对类内部实现的隐藏，可以再不影响使用的情况下改变类的内部结构，同时也保护了数据。对外只暴漏了相关的访问方法。
继承是为了重用父类的代码。注意Java不支持多继承，但支持多重继承。
多态指的就是程序中定义的引用变量所指向的具体实例和通过该引用发出的方法调用到底是哪个类中的方法必必须在程序运行期间才能决定。因为运行时才能决定具体的类。这样不用修改源代]]></description><category></category></item><item><title><![CDATA[【Java进阶二】理解继承]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51814866</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51814866</guid><author>Save_Helot</author><pubDate>Sun, 03 Jul 2016 13:20:41 +0800</pubDate><description><![CDATA[继承 
面向对象三大特性：封装、继承和多态。继承是我们“复用”代码的途径之一。关于继承主要说明以下几点。
  子类继承父类成员变量
  
  当子类继承了某个类之后，便可以使用父类中的成员变量或者叫属性，但是并不是完全的继承父类的所有成员变量。 
  1、能够继承父类的public和protected成员变量，不能够继承父类的private成员变量 
  2、对于父类的包访问权限成员变量，如果子类和]]></description><category></category></item><item><title><![CDATA[【Java进阶一】理解封装]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51814162</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51814162</guid><author>Save_Helot</author><pubDate>Sun, 03 Jul 2016 10:15:22 +0800</pubDate><description><![CDATA[封装 
    封装是Java的三大特性之一。封装顾名思义就是包装，在编程领域解释为信息隐藏，利用抽象的数据类型将数据和基于数据的操作封装在一起，构成一个不可分割的独立实体，数据被保护在抽象数据类型的内部，尽可能地隐藏内部的实现细节，只保留一些对外使用的方法或者接口来与外部发生联系。系统的其他对象只能通过封装在数据外层的一些有权限的操作（方法）来与这个对象发生交互。也就是我们无需知道对象内部的实现细]]></description><category></category></item><item><title><![CDATA[开始记录学习计划]]></title><link>https://blog.youkuaiyun.com/Save_Helot/article/details/51813447</link><guid>https://blog.youkuaiyun.com/Save_Helot/article/details/51813447</guid><author>Save_Helot</author><pubDate>Sun, 03 Jul 2016 00:24:16 +0800</pubDate><description><![CDATA[学习计划]]></description><category></category></item></channel></rss>