努力奔跑中的coder

源代码的github地址:https://github.com/louyuting

JDK源码和框架源码解析博客地址导航

置顶一篇文章,主要是整理一下写过的JDK中各个类的源码及其他框架源码解析的文章,方便自己随时阅读也方便网友朋友们阅读与指正. Java基础Java集合框架 PriorityQueue 原理与应用 DelayQueue原理与应用 J.U.C 多线程与并发框架 Java并发之线程机制 Java并发之共...

2017-11-13 15:33:01

阅读数:278

评论数:0

Java8内置函数式接口

Java8内置函数式接口技术积累/JavaJava8里面新增的一个非常重要的特性就是函数式接口,functional Interface。 函数式接口往往与lambda表达式一起使用。下面介绍一下Java8中新增的常用的函数式接口:1. Predicates先给出这个接口在JDK8中的简化定义:@...

2017-11-24 19:22:58

阅读数:383

评论数:2

IDEA下maven编译打包Java项目成jar包但是resource下配置文件打包不成功

今天在IDEA下打包一个Java项目,准备打包成jar包直接执行,打包之后运行时候一直提示resource下资源文件找不到,但我又确实配置了的,而且在IDEA上可以运行,但是打包成jar包之后就运行不了了。后来百度,发现对于resource下文件(properties等配置文件)需要在POM文件中...

2017-10-16 22:47:33

阅读数:5760

评论数:0

如何捕获java线程中的逃逸的异常

由于Java线程的本质特征,当抛出异常的时候就终止了如果再进行catch,都不在一个线程里面,所以无法捕捉到异常。Java线程中,要在run()方法中把一切的异常都处理掉,可以使用try-catch块。不能让这个线程抛出异常,因为如果我们不使用特殊的方式的话,我们是无法捕获从这个线程中逃逸的异常的...

2017-03-11 16:08:45

阅读数:3089

评论数:0

Java中网络IO的实现方式-BIO、NIO、AIO

在网络编程中,接触到最多的就是利用Socket进行网络通信开发。在Java中主要是以下三种实现方式BIO、NIO、AIO。 关于这三个概念的辨析以前一直都是好像懂,但是表达的不是很清楚,下面做个总结完全辨析清楚。 1. BIO方式首先我用一个较为通俗的语言来说明: BIO 就是阻塞I...

2017-02-26 13:25:33

阅读数:1151

评论数:0

Java的static关键字

这篇博文详细的总结Java中 static 关键字的作用。 1) static 变量 2)static 方法 3)static 代码块 4)static 静态内部类

2017-02-08 20:20:35

阅读数:205

评论数:0

Java的数组

本文主要说明关于Java的以下问题: (1) 数组的初始化 (2) 二维数组获取行数和列数 (3)返回数组 1. 数组的初始化对于数组的定义有两种形式:int[] a1; //或则是: int a1[];在Java中我们更加倾向于使用第一种。 因为它表示是一个数组的数据类型。编译...

2017-02-08 19:24:45

阅读数:209

评论数:0

Java的回调函数

最近有用到guava包的并发类,发现里面大量的用到了回调函数,突然就发现好多地方都用到了回调函数用到的思想,顺便就整理了一下,搞明白了回调函数是个什么东西。 简单点说,回调就是:A类中调用B类中的某个方法c,然后B类中反过来调用A类中的方法d,d这个方法就叫回调方法。这样子说可能刚开始看...

2017-01-29 14:13:51

阅读数:436

评论数:3

Java多线程问题总结

这篇博客是在看了微信公众号给我推送的一篇博客之后,然后根据自己的理解做的一个总结,也可以说是在别的blog的一个再总结: 参考博客:http://www.cnblogs.com/xrq730/p/5060921.html 主要是关于Java多线程中的40个问题的总结: 多线程有什么用? 创建...

2017-01-24 16:34:05

阅读数:583

评论数:1

线程安全的单例模式也可以很精彩

这篇博客以多种方式实现单例模式,包括非线程安全、线程安全的单例模式以及线程安全的优化。 饿汉式单例; 懒汉式单例(延迟初始化);(线程不安全) 线程安全的单例-synchronized方法 线程安全的单例-同步代码块 线程安全的单例-显式锁ReentrantLock进...

2017-01-22 22:59:55

阅读数:1497

评论数:1

Java对象的序列化与反序列化

1.什么是序列化与反序列化?序列化:指将对象的状态数据以字节流的形式进行处理,在文件中长期存储。 反序列:从字面上就能知道,指的就是在需要的时候从文件中获取该对象的信息以重新获得一个完全的对象。2.序列化与反序列化的作用?(1)永久性保存对象,把对象通过序列化字节流保存到本地文件中。 (2...

2017-01-16 14:18:59

阅读数:294

评论数:0

Java的动态代理

1、代理代理是基本的设计模式,有一些操作你不想整合到逻辑代码里面,因此需要代理来做这个事情。例如:日志、监控等下面将演示一个简单的代理:package test;interface Interface { void doSomething(); void somethingElse...

2017-01-16 10:47:40

阅读数:263

评论数:0

Java的反射

本文主要围绕以下几个点来详解反射: 1、反射机制是什么? 2、反射机制能做什么? 3、Java中反射的API以及应用1.反射机制是什么?借用百度百科的定义: 反射机制是在运行状态中: 1、对于任意一个类,都能够知道这个类的所有属性和方法; 2、对于任意一个对象,都能够调用它的...

2017-01-16 00:34:15

阅读数:273

评论数:0

Class对象的泛化

Class对象的泛化1、 为什么需要泛化? 代码在编译时就可以进行类型检测,不需要等到运行时才检测类型。2、 例子:package test;/** * Created by louyuting on 17/1/15. */ class Second{ static { ...

2017-01-15 19:14:37

阅读数:238

评论数:0

Class对象

Java程序运行时类型信息RTTI可以使我们在程序运行时发现和使用使用类型信息。Class对象Class对象是一个特殊的对象,每个类都有一个且仅有一个Class对象。Class对象就是用来创建类的所有“常规”实例对象的,Java通过Class对象来执行其RTTI。对于每个新类,首先JVM编译生成....

2017-01-15 17:04:28

阅读数:241

评论数:0

IDE工具的使用参考的一些blog

IDEA 创建Maven Web项目 IDEA中 @override报错的解决方法

2016-12-29 18:42:25

阅读数:292

评论数:0

Java创建和销毁对象的几种方式

创建对象的几种方式 构造器 静态工厂方法 通过Builder 不直接生成想要的对象,而是让客户端利用所有必要的参数调用构造器,得到一个builder对象,然后客户端在builder对象上调用类似于setter的方法,来设置每个可选参数,最后在客户端调用无参的build()方法来生成对象。下面是一...

2016-12-27 23:36:13

阅读数:1752

评论数:0

Java的hashCode()函数

这几天在看HashMap的源码时,发现这个Map的实现类里面大量的用到了hashCode的知识,以前也经常的听到这个函数,知道是Object类的方法,以前也看过关于这个函数的知识,但是没有做过记录,这次正好就做个记录,方便后面理解HashMap和LinkedHashMap源码。hashCode所谓...

2016-12-23 19:36:16

阅读数:390

评论数:0

Java的transient关键字

transient这个关键字我们一般很少用到,但是我再阅读JDK源码的时候常常看到这个关键字,在这里总结一些这个关键字的用法。 这个关键字主要是用于对象的序列化的。transient是字段类型修饰符,只能修饰变量,而不能修饰方法和类。 被transient关键字修饰的变量不能再被序列化,静态变量不...

2016-12-20 10:39:50

阅读数:223

评论数:0

为一线互联网而奋斗

Java中集合框架的源码和实现机制 Java的NIO中selector的实现原理;再研究一下netty的源码; Java中并发包的源码; Spring的IOC原理,看一下这部分的源码; 分布式程序是个什么情况。

2016-12-09 23:54:11

阅读数:481

评论数:0

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