java深入学习
文章平均质量分 84
静_默
聚沙成塔,积少成多!
展开
-
java深入学习(二)
为什么匿名内部类和局部内部类只能访问final变量?是变量的作用域的问题,因为匿名内部类是出现在一个方法的内部的,如果它要访问这个方法的参数或者方法中定义的变量,则这些参数和变量必须被修饰为final。因为虽然匿名内部类在方法的内部,但实际编译的时候,内部类编译成Outer.Inner,这说明内部类所处的位置和外部类中的方法处在同一个等级上,外部类中的方法中的变量或参数只是方法的局部变量,这些变量或转载 2015-09-11 18:24:38 · 491 阅读 · 0 评论 -
局部内部类和非静态成员内部类
关于为什么局部内部类只能访问final变量和非静态成员内部类为什么不能定义static成员的问题,csdn的解答比较清楚,借鉴:第一个问题:LLC必须访问方法内中final的变量或者参数归根到底是由于LLC所在方法中的局部变量的生命周期要短于LLC的生命周期。 描述:LLC定义在方法的内部,它可以访问方法中的变量和参数,当方法被调用时,局部变量和参数在栈内存中入栈,然后再在堆内存中创建一个转载 2016-09-28 17:10:55 · 498 阅读 · 0 评论 -
关于好的java内存泄漏的文章总结
内存管理的目的就是让我们在开发中怎么有效的避免我们的应用出现内存泄漏的问题。内存泄漏大家都不陌生了,简单粗俗的讲,就是该被释放的对象没有释放,一直被某个或某些实例所持有却不再被使用导致 GC 不能回收。最近自己阅读了大量相关的文档资料,打算做个 总结 沉淀下来跟大家一起分享和学习,也给自己一个警示,以后 coding 时怎么避免这些情况,提高应用的体验和质量。我会从 java 内存泄漏的基础知识开始转载 2016-10-11 19:22:22 · 612 阅读 · 0 评论 -
关于jdk8新特性的郝博文
虽然jdk1.8出来已经不少时间了,但现在大部分用的仍然是1.7,1.6,对于jdk8的新特性也不是很了解;所以有时间就看看啦~~~讲的比较详细的关于interface的default方法和关于lamda函数的一些知识: http://www.cnblogs.com/zhouxuanyu/p/4536514.html?utm_source=tuicool&utm_medium=referral总结转载 2016-09-08 11:47:16 · 529 阅读 · 0 评论 -
关于NIO的博文推荐
虽然nio很早就开始存在了,但由于从来没用过,导致一直不太清楚它的理念和原理,但是现在的公司应该都用nio了,宝宝还是处于io的原始状态,今天看了不少文章,推荐几篇写的挺好的,稍微有个感性的认识,我觉得,真正的深刻的理解还是要源于实践。。。nio入门:http://www.ibm.com/developerworks/cn/education/java/j-nio/ Java NIO原理图文分析及原创 2016-09-07 14:25:15 · 460 阅读 · 0 评论 -
关于InterruptedException的好文
好东西,忍不住转载咯。。。 http://blog.csdn.net/derekjiang/article/details/4845757当一个方法后面声明可能会抛出InterruptedException 异常时,说明该方法是可能会花一点时间,但是可以取消的方法。抛InterruptedException的代表方法有:java.lang.Object 类的 wait 方法java.lang.转载 2016-09-06 20:25:30 · 653 阅读 · 0 评论 -
关于Tomcat的观察者模式-推荐好文
文章写得很详细,容易理解,转载推荐。 原文地址:http://www.cnblogs.com/chenying99/archive/2012/09/05/2671199.html转载主要是供自己记录学习用的,哈哈哈~~~~本文主要结合观察者模式,讲述Tomcat的生命周期管理。Tomcat的生命周期管理机制设计的非常优雅,在Tomcat启动时,只需要启动一个Server组件,就会启动所有的容器及对转载 2016-08-28 11:12:31 · 563 阅读 · 0 评论 -
使用SocketChannel的NIO客户机服务器通信示例
java nio转载 2016-08-24 17:03:09 · 443 阅读 · 0 评论 -
JAVA序列化标准格式(XML、JSON)
(一) 序列化:将java对象转换为字节序列的过程叫做序列化反序列化:将字节对象转换为java对象的过程叫做反序列化通常情况下,序列化有两种用途:1) 把对象的字节序列永久的保存在硬盘中2) 在网络上传输对象的字节序列序列化和反序列化主要的API: — ObjectInputStream — readObject() — ObjectOutputStream原创 2016-08-24 16:38:18 · 750 阅读 · 0 评论 -
关于LinkedHashMap实现LRU缓存算法
缓存这个东西就是为了提高运行速度的,由于缓存是在寸土寸金的内存里面,不是在硬盘里面,所以容量是很有限的。LRU这个算法就是把最近一次使用时间离现在时间最远的数据删除掉。先说说List:每次访问一个元素后把这个元素放在 List一端,这样一来最远使用的元素自然就被放到List的另一端。缓存满了t的时候就把那最远使用的元素remove掉。但更实用的是 HashMap。因为List太慢,要删掉的数据总是位转载 2016-09-13 16:02:07 · 791 阅读 · 1 评论 -
Java锁--Lock实现原理(底层实现)
关于java lock的底层实现原理,讲的有点深,转载学习!Lock完全用Java写成,在java这个层面是无关JVM实现的。在java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、ReadWriteLock(实现类ReentrantReadWriteLock),其实现都依赖java.util.concurrent.AbstractQue转载 2016-09-01 20:11:56 · 32930 阅读 · 9 评论 -
ThreadLocal工作原理-面试常备
关于ThreadLocal,很多博文写的都是错的,这篇文章写的大致是对的(自认为,根据源码分析),转载学习!=====================================在这篇文章中,总结了一下面试过程中遇到的关于ThreadLocal的内容。总体上说,这样回答,面试算是过得去了。但是,这样的回答,明显仅仅是背会了答案,而没有去研究ThreadLocal的最根本的实现原理。一共有两个问题转载 2016-09-01 19:33:10 · 1855 阅读 · 0 评论 -
【转】设计模式之面向对象七大基本原则
概述在运用面向对象的思想进行软件设计时,需要遵循的原则一共有7个,他们是: 1. 单一职责原则(Single Responsibility Principle)每一个类应该专注于做一件事情。 2. 里氏替换原则(Liskov Substitution Principle)超类存在的地方,子类是可以替换的。 3. 依赖倒置原则(Dependence Inversion Principle)实现尽转载 2016-09-13 14:55:08 · 434 阅读 · 0 评论 -
关于上上文hashmap的深入-hashmap产生死锁的详解
看到的好文(我的好文都是我能看懂的,说明写的很详细啦),转载记录学习~ 不过人家也是转载的,不管啊,好文都要分享哒~~前言 几个月前,上线了一个版本。但是上线了几个小时之后 CPU 突然暴增至99%,在网上搜了一下,多半是因为出现死循环问题了。就用 jstack dump 了当时的线程快照,发现这次死循环问题的起源是 HashMap 的 get()方法。之后先是迅速重启了服务,这样可以让服务先运转载 2016-08-28 11:31:44 · 12437 阅读 · 2 评论 -
关于HashMap很好的博文-推荐
摘要 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。简介 Java为数据结构中的映射定义了一个接口java.util.Map,转载 2016-08-27 20:27:16 · 1217 阅读 · 0 评论 -
java深入学习(一)
为什么接口要规定成员变量必须是public static final的呢? 答: 首先接口是一种高度抽象的”模版”,,而接口中的属性也就是’模版’的成员,就应当是所有实现”模版”的实现类的共有特性,所以它是public static的 ,是所有实现类共有的 .假如可以是非static的话,因一个类可以继承多个接口,出现重名的变量,如何区分呢?其次,接口中如果可能定义非final的变量的话,而方原创 2015-09-09 15:34:13 · 2862 阅读 · 0 评论 -
Reference和Reference Queue
起因看guaua cache的时候看到源码里面有用到softReference、weakReference等作为key和value,突然想要深入理解一下引用的原理,看了源码和不少文章,终于有点感觉了,主要是gc控制了一些参数的设置,所以感觉有点难理解。关于基本的知识,我就不赘述了,反正我也是看的大家的文章原创 2019-08-07 18:29:42 · 342 阅读 · 0 评论