Java基础
文章平均质量分 54
献计献策
这个作者很懒,什么都没留下…
展开
-
Java Context释义
最近学习中经常看到Context,没能明白中文含义,一番搜索后看到此文,颇为实在,特转之Context在Java中的出现是如此频繁,但其中文翻译“上下文”又是如此诡异拗口,因此导致很多人不是很了解Context的具体含义是指什么,所以很有必要来深究一下这词的含义。先来举几个JAVA中用到Context的例子 (1)JNDI的一个类javax.naming.InitialContext,它读转载 2013-07-04 22:53:06 · 509 阅读 · 0 评论 -
Java运行时异常
今天去亚信科技(成都)面试,整体难度不是很难,问到了运行时异常相关的问题,我平常其实没太去关注这方面的东西,于是根据经验猜了如下几个。1、ArrayIndexOutOfBoundsException -数组越界访问2、ClassCastException - 类型转换异常3、NullPointerException -试图访问一空对象的变量、方法或空数组的元素4、OutOfMemo原创 2015-03-10 21:11:41 · 346 阅读 · 0 评论 -
String创建对象理解
1.1. String a = “goodluck”理解文字解释: Stringa = "goodluck";//先在栈中创建一个String类型的对象引用变量a,然后去常量池中找是否有“goodluck”字符串,// 如果没有就将“goodluck”放入常量池中,如果有了就直接将a指向“goodluck”,在这里产生一个对象"goodluck",产生一个引用a转载 2015-06-27 22:21:43 · 414 阅读 · 0 评论 -
Java HashMap 核心源码解读
Java HashMap 核心源码解读本篇对HashMap实现的源码进行简单的分析。 所使用的HashMap源码的版本信息如下:123456/** @(#)HashMap.java 1.73 07/03/13** Copyright 2006 Sun Microsystems, Inc. All rights转载 2015-06-14 21:14:55 · 379 阅读 · 0 评论 -
StringTokenizer使用
在Hadoop里面经常看到有StringTokenizer,用来分割字符串。那么在这里就简单地了解一下这个类到底有什么用。 1. StringTokenizer(String str):构造一个用来解析str的StringTokenizer对象。 java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。2. StringT转载 2015-06-10 18:03:57 · 403 阅读 · 0 评论 -
Java线程(篇外篇):线程本地变量ThreadLocal
首先说明ThreadLocal存放的值是线程内共享的,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递,这样处理后,能够优雅的解决一些实际问题,比如Hibernate中的OpenSessionInView,就是使用ThreadLocal保存Session对象,还有我们经常用ThreadLocal存放Connection,代码如:[java] view plaincopy转载 2015-06-07 19:15:12 · 384 阅读 · 0 评论 -
HashMap与ConcurrentHashMap的区别
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable。从Conc转载 2015-06-10 15:28:42 · 406 阅读 · 0 评论 -
java中volatile关键字的含义
在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchronized 关键字来实现,所有加上synchronized转载 2015-07-08 22:23:27 · 310 阅读 · 0 评论 -
ConcurrentHashMap原理分析
一.Java并发基础当一个对象或变量可以被多个线程共享的时候,就有可能使得程序的逻辑出现问题。 在一个对象中有一个变量i=0,有两个线程A,B都想对i加1,这个时候便有问题显现出来,关键就是对i加1的这个过程不是原子操作。要想对i进行递增,第一步就是获取i的值,当A获取i的值为0,在A将新的值写入A之前,B也获取了A的值0,然后A写入,i变成1,然后B也写入i,i这个时候依然是1. 当然jav转载 2015-06-14 21:15:42 · 516 阅读 · 0 评论 -
分批次处理String[]数组
1、将一个比较大的数组分批次进行操作,下面是样例代码:import java.util.Arrays;public class BatchCapacity { public static void main(String[] args) { int count = 150;//149 151分别进行测试 String[] array = new String[count];原创 2016-01-08 17:02:03 · 1038 阅读 · 0 评论 -
java动态代理(JDK和cglib)
java动态代理(JDK和cglib)JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的转载 2015-05-07 22:29:56 · 338 阅读 · 0 评论 -
彻底理解ThreadLocal
ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影转载 2015-05-06 22:07:34 · 314 阅读 · 0 评论 -
Java I/O操作
1、基于字节操作的I/O接口:InputStream和OutputStream2、基于字符操作的I/O接口:Writer和Reader3、基于磁盘操作的I/O接口:File4、基于网络操作的I/O接口:Socket(不在java.io包下)ByteArrayInputStream:处理字节数组的类,允许将内存的缓冲区当做InputStream使用。StringBufferInp原创 2013-06-18 00:42:00 · 465 阅读 · 0 评论 -
Java学习之编译时类型和运行时类型
Java中的许多对象(一般都是具有父子类关系的父类对象)在运行时都会出现两种类型:编译时类型和运行时类型,例如:Person person = new Student();这行代码将会生成一个person变量,该变量的编译时类型是Person,运行时类型是Student。 说明一下编译时类型和运行时类型: Java的引用变量有两个类型,一个是编译时类型,一个是运行时类型,编译时原创 2013-06-17 23:44:12 · 525 阅读 · 0 评论 -
java equal 与==详谈
java中equals方法和“==”的区别:equals 方法是 java.lang.Object 类的方法。有两种用法说明:(1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。“==”比较两个变量本身的值,即两个对象在内存中的首地址。“equals()”比较字符串中所包含的内容是否相同。比如:Str转载 2012-05-19 21:21:24 · 253 阅读 · 0 评论 -
WINDOW_JAVA环境变量设置
新建系统变量JAVA_HOME:C:\Program Files\Java\jdk1.5.0_06;新建系统变量CLASSPATH:.;%JAVA_HOME%\lib;(注意:点号表示当前目录,不能省略)在系统变量Path的值的前面加入以下内容:%JAVA_HOME%\bin;(注意:这里的分号不能省略)javac命令是编译指定类java命令时执行指定类原创 2013-06-15 09:57:48 · 466 阅读 · 0 评论 -
Int类型转换成byte[4]
/** * 整型转换为4位字节数组 * 将int类型的数据转换成byte[4] * @param intValue * @return */ public static byte[] int2Byte(int intValue) { byte[] b = new byte[4]; for (int转载 2015-02-08 10:04:14 · 1222 阅读 · 0 评论 -
ThreadLocal原理及其实际应用
前言java猿在面试中,经常会被问到1个问题: java实现同步有哪几种方式?大家一般都会回答使用synchronized, 那么还有其他方式吗? 答案是肯定的, 另外一种方式也就是本文要说的ThreadLocal。ThreadLocal介绍 ThreadLocal, 看名字也能猜到, "线程本地", "线程本地变量"。 我们看下官方的一段话:This class prov转载 2015-05-06 14:21:27 · 527 阅读 · 0 评论 -
Context解释
Context在Java中的出现是如此频繁.但是今天有人问我context是什么意思,当倒晕倒,说真的,我也不知道context是什么意思.就如人家问我(1+1为什么等于2).经过cotext.我行说说我的看法吧先来举几个JAVA中用到Context的例子(1)JNDI的一个类javax.naming.InitialContext,它读取JNDI的一些配置信息,并内含对象和其在JNDI中的转载 2013-06-16 00:05:26 · 505 阅读 · 0 评论