随笔分类 -  Java

摘要:" 简介" " IO概念" " 缓冲区操作" " 虚拟内存" " 文件IO" " 流IO" " 缓冲区" "Buffer属性" "Buffer数据填充、翻转、释放、压缩、标记" "Buffer比较" " Buffer批量移动" " 复制缓冲区" " 字节缓冲区" " 直接缓冲区" " 其他缓冲区" 阅读全文
posted @ 2018-05-12 20:38 toto怎么会喝醉 阅读(315) 评论(0) 推荐(0)
摘要:作为一名后端屌丝程序员,对算法、并发、性能乐此不疲。但是,随着年龄和阅历的增加,显然叶落而不知秋的心态是不太能混了。尤其是,某T面试官在明知我是后端,且明确表示对HTTP协议不太熟的情况下,强行让我解释HTTP状态码200至600的含义。这,便是本篇的初衷,讲一讲后端眼里的前端故事。内容基于《深入分 阅读全文
posted @ 2018-02-28 16:51 toto怎么会喝醉 阅读(293) 评论(0) 推荐(0)
摘要:类装载器就是寻找类的字节码文件,并构造出类在JVM内部表示的对象组件。在Java中,类装载器把一个类装入JVM中,要经过以下步骤: (1) 装载:查找和导入Class文件; (2) 链接:把类的二进制数据合并到JRE中; (a)校验:检查载入Class文件数据的正确性; (b)准备:给类的静态变量分 阅读全文
posted @ 2017-06-02 23:47 toto怎么会喝醉 阅读(192) 评论(0) 推荐(0)
摘要:"基础知识" "对象的共享" "基础构建模块" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3" "主题字号3 阅读全文
posted @ 2017-05-30 16:32 toto怎么会喝醉 阅读(109) 评论(0) 推荐(0)
摘要:less, but is more. "创建和销毁对象" "避免创建不必要对象" "消除过期的对象引用" "使可变性最小" "泛型" "用标记接口定义类型" "检查参数有效性" "返回零长度的数组或集合,而不是null" "需要精确答案时,避免使用float和double" "接口优先于反射机制" 阅读全文
posted @ 2017-05-30 15:54 toto怎么会喝醉 阅读(130) 评论(0) 推荐(0)
摘要:"start()方法和run()方法的区别" "Runnable接口和Callable接口的区别" "CyclicBarrier和CountDownLatch的区别" "volatile关键字的作用" "获得线程dump" "检测一个线程是否持有对象监视器" "synchronized和Reentr 阅读全文
posted @ 2017-05-23 23:16 toto怎么会喝醉 阅读(203) 评论(0) 推荐(0)
摘要:"对线程异常的处理" "远程调试" "修改static final变量" "execute、executeUpdate、executeQuery三者的区别(及返回值)" 对线程异常的处理 调用Thread的静态方法Thread.setDefaultUncaughtExceptionHandler() 阅读全文
posted @ 2016-12-09 15:07 toto怎么会喝醉 阅读(219) 评论(0) 推荐(0)
摘要:jdk7新特性(部分) switch支持字符串 List tempList = new ArrayList(),泛型实例化自动推断 AutoCloseable接口实现自动关闭,在try()中 新增获取环境信息的工具方法,getJavaHomeDir,getUserHomeDir,getUserDir 阅读全文
posted @ 2016-11-21 12:37 toto怎么会喝醉 阅读(4877) 评论(0) 推荐(1)
摘要:http://blog.csdn.net/stevenhu_223/article/details/9286121 阅读全文
posted @ 2016-09-09 17:45 toto怎么会喝醉 阅读(296) 评论(0) 推荐(0)
摘要:环境变量 环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变 阅读全文
posted @ 2016-09-07 23:06 toto怎么会喝醉 阅读(271) 评论(0) 推荐(0)
摘要:线程池 线程池的基本思想:线程频繁的创建、销毁会极大地占用系统资源,为了减少系统在创建销毁线程时的开销,线程池应运而生。线程池包括多个已创建的线程,当有任务要在新线程中执行时,将任务提交给线程池,线程池选取空闲线程或新开线程执行该任务,可见线程池应维护一个任务队列和线程队列。此外还要对线程最大数、最 阅读全文
posted @ 2016-09-03 14:47 toto怎么会喝醉 阅读(865) 评论(0) 推荐(0)
摘要:初衷 1. 工作中用到了很多框架,但是给我印象最深的还是我们PO(Product Owner)在若干年前写的一套任务调度框架,在JDK1.4之前,concurrent包还没有引入, 手写的这套Token调度,去年我们依然在使用,并且满足了商用软件的各种要求。 2. 框架本身是可行的,但是也存在一些问 阅读全文
posted @ 2016-08-23 18:02 toto怎么会喝醉 阅读(834) 评论(0) 推荐(0)
摘要:synchronized 原则: 1. 尽量避免无谓的同步控制,同步需要系统开销,可能造成死锁 2. 尽量减少锁的粒度 同步方法 1. 同步方法锁的是对象。类中有一个同步方法,这个方法可以被两个不同的线程同时执行,只要每个线程自己创建一个的该类的实例即可。 2. 要实现类的同步,两种方式: 方法中添 阅读全文
posted @ 2016-08-23 17:28 toto怎么会喝醉 阅读(196) 评论(0) 推荐(0)
摘要:sleep()和wait() 首先,Java中的多线程是一种抢占式的机制,而不是分时机制。抢占式的机制是有多个线程处于可运行状态,但是只有一个线程在运行。 这种机制决定了,对于同一对象的多线程访问,必须考虑同步的问题,synchronize的意义在这。 几个区别: 1. sleep是Thread类的 阅读全文
posted @ 2016-08-22 22:06 toto怎么会喝醉 阅读(306) 评论(0) 推荐(0)
摘要:default方法 Java 8中引入了一个新的概念,叫做default方法,也可以称为Defender方法,或者虚拟扩展方法(Virtual extension methods)。 Default方法是指,在接口内部包含了一些默认的方法实现(也就是接口中可以包含方法体,这打破了Java之前版本对接 阅读全文
posted @ 2016-08-22 18:01 toto怎么会喝醉 阅读(451) 评论(4) 推荐(0)
摘要:native native是方法修饰符。Native方法是由另外一种语言(如c/c++,FORTRAN,汇编)实现的本地方法。一般用于JNI中。 native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中。Java语言本身不能对操作 阅读全文
posted @ 2016-08-21 19:11 toto怎么会喝醉 阅读(508) 评论(0) 推荐(0)
摘要:实际相当于,jdk会自动生成一个匿名内部类,完成职责: 可以看到前者更简洁。(注意前者最后的分号不能省略,编译器把整个看作一条语句) 不过,匿名内部类仅限于只实例化一次的内部类,如果内部类需要多次实例化,通常用后者。 另外,匿名内部类要么继承一个父类,要么实现一个接口,不能两者兼有,实现接口时也不能 阅读全文
posted @ 2016-08-12 12:15 toto怎么会喝醉 阅读(494) 评论(0) 推荐(0)
摘要:设置 1. 点 “window” "Preferences" "Java" "Installed JRES" 2. 此时"Installed JRES"右边是列表窗格,列出了系统中的 JRE 环境,选择你的JRE,然后点边上的 "Edit...", 会出现一个窗口(Edit JRE) 3. 选中rt 阅读全文
posted @ 2016-08-12 12:11 toto怎么会喝醉 阅读(187) 评论(0) 推荐(0)
摘要:[TOC] Jackson Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。 多态类型的处理 jackson允许配置多态类型处理,当进行反序列话时,JSON数据匹配的对象可能有多个子类型,为了正确的读取对象的类型,我们需要添加一些 阅读全文
posted @ 2016-08-10 17:54 toto怎么会喝醉 阅读(13463) 评论(1) 推荐(0)
摘要:date: 2015 09 06 19:45:38 Java最基本的数据结构有数组和链表。 数组的特点是空间连续(大小固定)、寻址迅速,但是插入和删除时需要移动元素,所以查询快,增加删除慢。 链表恰好相反,可动态增加或减少空间以适应新增和删除元素,但查找时只能顺着一个个节点查找,所以增加删除快,查找 阅读全文
posted @ 2016-07-06 23:25 toto怎么会喝醉 阅读(162) 评论(0) 推荐(0)