自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 通过字符流实现线程通信

package com.freeflying.thread.communication;import java.io.PipedInputStream;import java.io.PipedOutputStream;import java.io.PipedReader;import java.io.PipedWriter;/** * 通过字符流实现线程间通信 * @ClassN...

2018-07-24 22:26:06 142

原创 通过字节流实现线程通信

package com.freeflying.thread.communication;import java.io.PipedInputStream;import java.io.PipedOutputStream;/** * 通过字节流实现线程间通信 * @ClassName: CommunicationByPiped * @Description: * @author ...

2018-07-24 22:18:27 164

原创 wait时interrupt出现异常

package com.freeflying.thread.communication;/** * 在wait时线程被interrupt * @ClassName: InterruptMeetWait * @Description: * @author freeflying * @date 2018年7月17日 */public class InterruptMeetWait...

2018-07-17 21:36:16 833

原创 工厂方法模式

package com.freeflying.designmodle.factorymethod;public interface Human { public void getColor();//每个人的肤色 public void talk();//说话}/** * 抽象人类创建工厂 * @ClassName: AbstractHumanFactory * @Desc...

2018-07-17 12:57:49 145

原创 notify不释放锁

package com.freeflying.thread.communication;/** * Notify不释放锁 * @ClassName: NotifyNotReleaseLock * @Description: * @author freeflying * @date 2018年7月16日 */public class NotifyNotReleaseLock {...

2018-07-16 22:32:40 442

原创 sleep同步

package com.freeflying.thread.communication;/** * sleep方法同步 * @ClassName: WaitReleaseLock * @Description: * @author freeflying * @date 2018年7月16日 */public class SleepReleaseLock { public s...

2018-07-16 22:20:56 283

原创 wait释放线程锁资源

package com.freeflying.thread.communication;/** * wait方法是否锁 * @ClassName: WaitReleaseLock * @Description: * @author freeflying * @date 2018年7月16日 */public class WaitReleaseLock { public st...

2018-07-16 22:14:50 1566

原创 汉诺塔问题

package com.freeflying.algor;/** * 汉诺塔问题 * @ClassName: Hlt * @Description: * @author freeflying * @date 2018年7月16日 */public class Hlt { public static void main(String[] args) { move(4,'A'...

2018-07-16 12:55:33 141

原创 原子类不完全原子性

package com.freeflying.thread.volatil;import java.util.concurrent.atomic.AtomicLong;/** * 原子类不完全原子性 * @ClassName: AtomicClassNotSafe * @Description: * @author freeflying * @date 2018年7月14日 ...

2018-07-14 09:19:24 231

原创 原子类进行i++操作实现线程安全

package com.freeflying.thread.volatil;import java.util.concurrent.atomic.AtomicInteger;/** * 使用原子类进行i++操作实现线程安全 * @ClassName: AtomicClass * @Description: * @author freeflying * @date 2018年7月1...

2018-07-14 09:07:07 399

原创 volatile的非原子性

package com.freeflying.thread.volatil;/** * volatile的非原子性 * @ClassName: VolatileNotAtomic * @Description: * @author freeflying * @date 2018年7月14日 */public class VolatileNotAtomic { public s...

2018-07-14 09:01:33 524

原创 单例模式

定义: 一个应用只产生一个实例 通用代码1-饿汉模式(缺点:instance是在类加载时初始化,如果初始化太早造成资源浪费) public class Singleton(){ private static final Singleton singleton=new Singleton(); //限制产生多个对象 private Singleton(){} //获得实例对象 ...

2018-07-12 23:36:50 128

原创 同步死循环

package com.freeflying.thread.volatil;/** * 通过valatile解决同步死循环 * @ClassName: HandleSyncDeadCycle * @Description:volatile强制从公共堆栈进行取值 * @author freeflying * @date 2018年7月12日 */public class Hand...

2018-07-12 23:30:16 300

原创 同步死循环解决

package com.freeflying.thread.volatil;/** * 通过线程的方式处理同步死循环 * @ClassName: HandleAsyncDeadCycle * @Description: * @author freeflying * @date 2018年7月12日 */public class HandleAsyncDeadCycle { p...

2018-07-12 23:19:33 279

原创 同步死循环

package com.freeflying.thread.volatil;public class PrintString { public static void main(String[] args) { PrintStringEx printStringEx=new PrintStringEx(); printStringEx.printStringMethod(); S...

2018-07-12 22:32:05 199

原创 用eclipse通过数据库生成实体类-mysql

1.show Data Source Explore    ->window->show view->Data Source Explorer(如果没有存在则在other中选择)           选择后会多一个view-Data Source Explorer2.在Data Source Explore视图中选中Database Connections    ->Dat...

2018-07-09 20:19:08 3065

原创 synchronized同步方法时的死循环

package com.freeflying.thread.sync;//死循环public class SyncMethodDeadLock { public static void main(String[] args) { SyncMethodDeadLockEx syncMethodDeadLockEx=new SyncMethodDeadLockEx(); SyncMeth...

2018-07-05 22:53:44 889

原创 String类型作为锁的弊端

package com.freeflying.thread.sync;/** * 使用String类型作为锁 * @ClassName: ConstantPoolString * @Description: * @author freeflying * @date 2018年7月5日 */public class ConstantPoolString { public sta...

2018-07-05 22:42:47 2435

原创 一半同步-一半异步

package com.freeflying.thread.sync;/** * 一半同步,一半异步 * @ClassName: SyncAndAsync * @Description: * @author freeflying * @date 2018年7月2日 */public class SyncAndAsync { public static void main(St...

2018-07-02 21:29:10 122

原创 同步代码块的使用

package com.freeflying.thread.sync;/** * 同步代码块的使用 * @ClassName: SyncCodeBlock * @Description: * @author freeflying * @date 2018年7月2日 */public class SyncCodeBlock { public static void main(S...

2018-07-02 21:18:54 719

原创 算法时间复杂度和空间复杂度

算法的定义:算法是规则的有限集合,是为解决特定问题而规定的一系列操作算法的特性: 有限性:有个步骤之内正常结束,不能形成无穷循环 确定性:算法中的每个步骤必须有确定含义,无二义性得以实现 可行性:原则上能精确进行,操作可通过已实现基本运算执行有限次而完成 输入:有多个或者0个输入 输出:至少有一个或者多个输出算法的特征: 正确性: 程序没有语法错误 程序对于几组输入数据能够得出满足规格说明要求...

2018-07-02 20:49:29 294

原创 数据结构的基本概念

数据:数据是描述客观事物的数值、字符以及能输入机器且能被处理的各种符号集合 数据包含整型、实型、布尔型、图像、字符、声音等一切可以输入到计算机中的符号集合数据元素:是组成数据的基本单位,是数据集合的个体,在计算机中通常作为一个整体进行考虑和处理 通常有节点来表示数据元素 一个数据元素可由多个数据项来祖册 数据对象:性质相同的数据元素的结合,是数据的一个子集数据结构:相互之间存在一种或者多种特定关系...

2018-07-01 23:15:19 170

原创 可重入锁

package com.freeflying.thread.sync;/** * java的synchronized锁是可以在类中的获取内部其他方法的锁 * @ClassName: LockReEnter * @Description: * @author freeflying * @date 2018年6月27日 */public class LockReEnter { p...

2018-06-27 22:37:58 115

原创 多个对象多个锁

package com.freeflying.thread.sync;/** * @ClassName: MuchObjMuchLock * @Description:对个对象多个锁 * @author freeflying * @date 2018年6月26日 */public class MuchObjMuchLock { public static void main(S...

2018-06-26 21:29:49 542

原创 实例的变量是线程不安全的

package com.freeflying.thread.sync;/** * @ClassName: InstanceVarThreadSafe * @Description:实例的变量是线程不安全的 * @author freeflying * @date 2018年6月25日 */public class InstanceVarThreadNotSafe { publi...

2018-06-25 22:03:52 804

原创 方法内的变量是线程安全的

package com.freeflying.thread.sync;/** * @ClassName: MethodVarThreadSafe * @Description:方法内的变量是线程安全的 * @author freeflying * @date 2018年6月25日 */public class MethodVarThreadSafe { public stati...

2018-06-25 21:57:49 2145

原创 idea常用快捷键

Ctrl+z ->撤销Ctrl+shift+z -> 重做Ctrl+c ->复制光标所在行ctrl+d ->复制并在下面张贴所在行ctrl+y -> 删除光标所在行ctrl+x ->剪切光标所在行ctrl+f ->当前文件中查找ctrl+shift+f ->在不同范围检索内容并可以编辑ctrl+r -> 替换ctrl+shift+r ->...

2018-06-25 21:24:38 108

原创 处理maven的jar版本问题

1.打开maven project2.选中项目的Dependencies3.点击show dependencies4.若线是红色,则有依赖冲突5.选中冲突的版本,然后点击右键->exclude或者在pom.xml文件中右键选中mavne->show dependencies...

2018-06-25 20:58:31 1712

原创 idea-设置SDK

设置sdk1.file->project structure2.project->project sdk->new设置maven配置 1.file->setting2.搜索->maven全局settingfile->other setting->default setting设置编译版本在pom.xml中配置插件 java-compiler    ...

2018-06-25 20:11:42 22933

原创 创建maven项目

1.file->new project2. 选中maven3.project sdk(选择需要的jdk,没有就新建)4.create from archetype    quickstart->    webapp->5.工程坐标    GroupId->    artifactId->6.maven home directory    setting file-&g...

2018-06-25 20:03:38 137

原创 守护线程

package com.freeflying.thread.base;public class DaemonThread { public static void main(String[] args) { try { DaemonThreadEx daemonThreadEx=new DaemonThreadEx(); daemonThreadEx.setDaemon(tr...

2018-06-24 21:30:45 94

原创 yield方法

package com.freeflying.thread.base;/** * @ClassName: YieldFunction * @Description:yield方法的使用 * @author freeflying * @date 2018年6月24日 */public class YieldFunction { public static void main(St...

2018-06-24 21:19:59 104

原创 在休眠状态下停止线程(先停止,再休眠)

package com.freeflying.thread.base;/** * @ClassName: StopThreadAtSleep * @Description:在休眠状态下停止线程(先停止,再休眠) * @author freeflying * @date 2018年6月23日 */public class StopThreadAtSleepA { public st...

2018-06-23 16:18:37 900

原创 在休眠状态下停止线程1

package com.freeflying.thread.base;/** * @ClassName: StopThreadAtSleep   * @Description:在休眠状态下停止线程---先休眠再停止 * @author freeflying * @date 2018年6月23日 */public class StopThreadAtSleep { public st...

2018-06-23 16:09:32 293

原创 通过抛出异常的方式停止线程

package com.freeflying.thread.base;/** * @ClassName: StopThreadByException * @Description:通过throw异常的方式停止线程(真正的停止了线程) * @author freeflying * @date 2018年6月23日 */public class StopThreadByExcepti...

2018-06-23 15:58:46 3812

原创 通过异常来停止线程

package com.freeflying.thread.base;/** * @ClassName: StopThreadByException * @Description:通过异常的方式停止线程 * @author freeflying * @date 2018年6月23日 */public class StopThreadByException { public st...

2018-06-23 15:51:52 209

原创 判断线程是否停止

判断线程是否停止有两个方法,两个方法都是实例方法1.public boolean interrupted()    测试当前线程是否是中断状态,执行后具有将状态标志清除为false功能。意味着线程中断后当两次调用时,第二次将返回false2.public boolean isInterrupted()    测试线程对象是否已经处于中断状态,但不清除状态标志。意味着线程中断后连续多次调用也返回tr...

2018-06-22 22:26:13 2362

原创 停不了的线程

package com.freeflying.thread.base;/** * @ClassName: UseInterrupt * @Description:停不了的线程 * @author freeflying * @date 2018年6月22日 */public class UseInterrupt { public static void main(String[]...

2018-06-22 22:19:45 133

原创 this和currentThread区别

package com.freeflying.thread.base;/** * @ClassName: ThisAndCurrentThread * @Description:this和currentThread的区别 * @author freeflying * @date 2018年6月22日 */public class ThisAndCurrentThread { p...

2018-06-22 21:55:38 368

原创 测试线程活动状态

package com.freeflying.thread.base;/** * @ClassName: IsAlive * @Description:测试线程是否处于活动状态 * @author freeflying * @date 2018年6月22日 */public class IsAlive { public static void main(String[] arg...

2018-06-22 21:43:29 1325

空空如也

空空如也

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

TA关注的人

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