Java
文章平均质量分 51
冰镇-西瓜
目标赋予我们生命的意义和目的。有了目标,我们才会把注意力集中在追求喜悦,而不是在避免痛苦上。
展开
-
ThreadLocal源码解析
ThreadLocal是Java语言提供的用于支持线程局部变量的类。所谓的线程局部变量,就是仅仅只能被本线程访问,不能在线程之间进行共享访问的变量(每个线程一个拷贝)。在各个Java web的各种框架中ThreadLocal几乎已经被用烂了,spring中有使用,mybatis中也有使用,hibernate中也有使用,甚至我们写个分页也用ThreadLocal来传递参数......这也从侧面说明了转载 2017-08-24 17:00:12 · 139 阅读 · 0 评论 -
打印出二叉树中结点值的和为输入整数的所有路径
问:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。import java.util.ArrayList;/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null;原创 2017-08-31 11:26:53 · 890 阅读 · 0 评论 -
Java方法重写和方法重载
方法重写的前提: 必须要存在继承的关系。方法的重写: 子父类出了同名的函数,这个我们就称作为方法的重写。什么是时候要使用方法的重写:父类的功能无法满足子类的需求时。方法重写要注意的事项: 1.方法重写时, 方法名与形参列表必须一致。 2.方法重写时,子类的权限修饰符必须要大于或者等于父类的权限修饰符。 3.方法重写时,子类的返回值类原创 2017-08-31 09:41:22 · 229 阅读 · 0 评论 -
Java运算符优先级
原创 2017-08-31 09:41:08 · 117 阅读 · 0 评论 -
字符编码
原创 2017-09-07 09:50:11 · 183 阅读 · 0 评论 -
java定义数组的三种类型
三种定义数组的格式如下:[java] view plain copyint[] arr1=new int[10]; int[] arr2={1,2,3,6}; int[] arr3=new int[]{1,2,3,4,5,6,7,22}; 注意:数组的length是一个属性,而字符串的le转载 2017-08-29 15:31:53 · 786 阅读 · 0 评论 -
java 基本数据类型及自动类型提升
1.Java的8种基本数据类型及其所占空间大小: boolean 8bit/1byte byte 8bit/1byte char 16bit/2byte short 16bit/2byte float 32bit/4byte int 32bit/4byte l转载 2017-08-29 15:23:20 · 508 阅读 · 0 评论 -
进程与线程
1.定义进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.转载 2017-08-29 15:17:40 · 137 阅读 · 0 评论 -
java中Collection与Collections的区别
Collection 和 Collections的区别。 Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。 Collection是个java.util下的接口,它是各种集合结构的父接口。 List, Set, Map是否继承自Collection接口? List,Set是 Map不是 ArrayList和Vector的区别。 一.同步性:Vector是线程转载 2017-08-29 15:15:50 · 166 阅读 · 0 评论 -
Java方向如何准备BAT技术面试答案
1.面向对象和面向过程的区别 面向过程优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。缺点:没有面向对象易维护、易复用、易扩展面向对象优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护缺点:转载 2017-09-05 22:03:07 · 286 阅读 · 0 评论 -
Java正则表达式的语法与示例
概要:Java正则表达式的语法与示例| |目录1匹配验证-验证Email是否正确2在字符串中查询字符或者字符串3常用正则表达式4正则表达式语法1匹配验证-验证Email是否正确Java | 复制public static void main(String[] args) { // 要验证的字符串 String str = "s转载 2017-09-05 09:30:56 · 138 阅读 · 0 评论 -
JVM_类加载
加载:查找并加载类的二进制数据连接:--验证:确保被加载的类的正确性 --准备:为类的静态变量分配内存,并将其初始化为默认值。 --解析:把类中的符号引用转换为直接引用初始化:为类的静态变量赋予正确的初始化。 Java程序对类的使用分为:主动使用、被动使用。主动使用(六种): 创建类的实例。访问某个类或接口的静态变量,或者对该静态变量赋值。调用类的静态方原创 2017-08-23 10:30:10 · 166 阅读 · 0 评论 -
Java 虚拟机(JVM)
这篇文章解释了Java 虚拟机(JVM)的内部架构。下图显示了遵守 Java SE 7 规范的典型的 JVM 核心内部组件。 上图显示的组件分两个章节解释。第一章讨论针对每个线程创建的组件,第二章节讨论了线程无关组件。线程JVM 系统线程每个线程相关的程序计数器栈本地栈栈限制栈帧局部变量数组操作数栈动态链接线程共享堆内存管理非堆内存即时编译方法区类文件结构类转载 2017-08-22 23:08:26 · 168 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap和Hashtable的区别HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们之间的分别。主要的区别有:线程安全性,同步(synchronization),以及速度。HashMap几乎可以等价于Hashtable,除了HashMap是非synchronized的,并可以接受null(HashMap可以接受为null的键值(key)和值(v转载 2017-08-22 23:02:30 · 128 阅读 · 0 评论 -
Java_Proxy
动态代理其实就是Java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class byte,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 class byte加载进系统,最后生成这样一个类的对象,并初始化该对象的一些值,如invocationHandler,以即所有的接口对应的Meth转载 2017-08-25 11:20:57 · 177 阅读 · 0 评论 -
Java反射机制
反射,当时经常听他们说,自己也看过一些资料,也可能在设计模式中使用过,但是感觉对它没有一个较深入的了解,这次重新学习了一下,感觉还行吧! 一,先看一下反射的概念: 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。原创 2017-08-25 10:39:55 · 157 阅读 · 0 评论 -
AtomicInteger解析
在Java语言中,++i和i++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。咳哟参考我之前写的一篇博客http://www.cnblogs.com/sharkli/p/5597148.html,今天偶然发现可以不用synchronized使用AtomicInteger完成同样的功能,具体代码如下,转载 2017-08-24 17:19:53 · 222 阅读 · 0 评论 -
Java集合框架
Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Element转载 2017-09-02 11:15:15 · 209 阅读 · 0 评论