
java
文章平均质量分 81
喵一只
这个作者很懒,什么都没留下…
展开
-
jdk与jre的区别
总是分不清。很多程序员已经干了一段时间java了依然不明白jdk与jre的区别。JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。JRE是Java Runtime Enviroment是指Java的运行转载 2013-07-25 14:32:30 · 376 阅读 · 0 评论 -
java Long long
在Java中执行如下的代码:long number = 26012402244; 编译的时候会出现一个错误,提示“过大的整数: 32322355744”,如果在Eclipse中书写上面的代码,提示的是“The literal 26012402244 of type int is out of range”。可以看出,在Java代码中直接书写的数字是int类型的,就是说数字转载 2014-03-24 21:35:37 · 5720 阅读 · 0 评论 -
String、StringBuffer、StringBuilder
在java中有3个类来负责字符的操作。1.Character 是进行单个字符操作的,2.String 对一串字符进行操作。不可变类。3.StringBuffer 也是对一串字符进行操作,但是可变类。String:是对象不是原始类型.为不可变对象,一旦被创建,就不能修改它的值.对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.String 是转载 2014-03-17 22:19:12 · 483 阅读 · 0 评论 -
[thinking in java]随笔
类中的基础类型会自动初始化为0,而局部变量会随机得到一个数…… 静态方法可针对类调用,毋需一个对象;static关键字的存在:需要一个存储区来保存一个特定的数据(无论创建多少个对象),需要一个特殊的方法(与这个类的任何对象都没有关系)。再不必创建对象钱调用那个方法,如:main()。 import:解决名字冲突的类,指明你用的是哪个类。 逻辑右移“>>”,算术右移“>>>”原创 2014-05-12 18:15:02 · 494 阅读 · 0 评论 -
java8新特性
推荐:“Java is still not dead—and people are starting to figure that out.”本教程将用带注释的简单代码来描述新特性,你将看不到大片吓人的文字。一、接口的默认方法Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下:复制代转载 2014-09-05 11:15:40 · 533 阅读 · 0 评论 -
java读写 properties
转自:http://han2000lei.iteye.com/blog/377899转载 2014-09-01 14:31:05 · 535 阅读 · 0 评论 -
java初始化的先后顺序
java初始化的先后顺序:静态对象变量()原创 2014-09-01 10:21:05 · 448 阅读 · 0 评论 -
java单例模式线程安全
关于单例模式的文章,其实网上早就已经泛滥了。但一个小小的单例,里面却是有着许多的变化。网上的文章大多也是提到了其中的一个或几个点,很少有比较全面且脉络清晰的文章,于是,我便萌生了写这篇文章的念头。企图把这个单例说透,说深入。但愿我不会做的太差。 首先来看一个典型的实现: 1 /** 2 * 基础的单例模式,Lazy模式,非线程安全 3 * 优点:lazy,初次使用时实例化转载 2014-09-15 14:06:36 · 3485 阅读 · 4 评论 -
volatile
java中volatile关键字的含义在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchron转载 2014-09-15 14:23:43 · 477 阅读 · 0 评论 -
java动态代理
java动态代理学习笔记博客分类: javaJavaCC++C#Blog 没事的时候翻看lang.reflect包下的代码,发现有两部分内容:涉及反射和动态代理。 很多地方都可以看到动态代理的影子,只是一直没仔细看下。 在学习之前,先提出几个问题,带着问题来看代码: 1.什么是动态代理? 2.为什么使用动态代理? 3.使用它有哪些好处?转载 2014-09-15 15:49:10 · 449 阅读 · 0 评论 -
java生产者消费者多线程同步
package demo.thread;/** *经典生产者与消费者问题:生产者不断的往仓库中存放产品,消费者从仓库中消费产品。 *其中生产者和消费者都可以有若干个。仓库容量有限,库满时不能存放,库空时不能取产品 */public class ProducersAndConsumers { public static void main(String[] args) { St转载 2014-09-02 11:29:49 · 442 阅读 · 0 评论 -
BlockingQueue
前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。认识BlockingQueue阻塞队列,顾名思义,首先它是一个队列,而一个转载 2014-09-02 11:23:40 · 423 阅读 · 0 评论 -
java多线程详细
http://lavasoft.blog.51cto.com/62575/27069/这个博客真是赞!转载 2014-03-24 22:13:09 · 606 阅读 · 0 评论 -
java clone()
----------------------------------------我是小小分割线-------------------------------- Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,特别是先学c、c++后学java的程序员。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应原创 2014-03-27 12:37:12 · 422 阅读 · 0 评论 -
java多线程
在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口。对于直接继承Thread的类来说,代码大致框架是:?123456789101112class 类名 extendsThread{方法1;方法2;…public void run转载 2014-03-24 22:09:31 · 508 阅读 · 0 评论 -
Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决
解决办法:使用UltraEdit将上边的txt文件另存为UTF-8无BOM格式;或者使用Notepad++打开上边的txt文件执行如下操作“格式-->以UTF-8无BOM格式编码”,修改后将txt文本进行保存原创 2013-12-22 21:19:28 · 724 阅读 · 0 评论 -
java设计模式——工厂模式
一、工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。 工厂模式在《Java与模式》中分为三类:1)简单工厂模式(Simple Factory):不利于产生系列产品;2)工厂方法模式(Factory Method):又称为多形性工厂;3)抽象工厂模式(Abstract Factory):又称为工具箱,产生产品族,但转载 2014-03-13 17:22:29 · 682 阅读 · 0 评论 -
HashMap遍历
java Map 遍历速度最优解第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey();转载 2014-03-14 17:05:17 · 566 阅读 · 0 评论 -
java垃圾回收机制
首先说一下finalize方法java提供finalize()方法,垃圾回收器准备释放内存的时候,会先调用finalize()。 (1).对象不一定会被回收。 (2).垃圾回收不是析构函数。 (3).垃圾回收只与内存有关。 (4).垃圾回收和finalize()都是靠不住的,只要JVM还没有快到耗尽内存的地步转载 2014-03-16 22:43:50 · 475 阅读 · 0 评论 -
Java内存分区
1.内存可分为3个区:堆(heap)、栈(stack)和方法区(method) 2. 3. 4.基础数据类型直接在栈空间分配, 方法的形式参数,直接在栈空间分配,当方法调用完成后从栈空间回收。 引用数据类型,需要用new来创建,既在栈空间分配一个地址空间,又在堆空间分配对象的类变量 。 方法的引用参数,在栈空间分配一个地址空间,并指向堆空间的对象区,当方法调用完成后从栈空间回收转载 2014-03-17 21:51:32 · 804 阅读 · 0 评论 -
Java 序列化
Java序列化算法透析Serialization(序列化)是一种将对象以一连串的字节描述的过程;反序列化deserialization是一种将这些字节重建成一个对象的过程。Java序列化API提供一种处理对象序列化的标准机制。在这里你能学到如何序列化一个对象,什么时候需要序列化以及Java序列化的算法,我们用一个实例来示范序列化以后的字节是如何描述一个对象的信息的。序列化的必要性Jav转载 2014-03-17 21:55:47 · 448 阅读 · 0 评论 -
POJO
本文转载自百度文库,详细出处请参考: http://wenku.baidu.com/view/4a9ad533ee06eff9aef80765.html我认为写的很准确,很抱歉没有找到作者的名字! POJO(Plain Old Java Object)这种叫法是Martin Fowler、Rebecca Parsons和Josh MacKenzie在2000年的一次转载 2014-03-21 12:27:40 · 540 阅读 · 0 评论 -
observer 设计模式
Subject类register(Observer o){observerList.add(o);}remove(Observer o){observerList.remove(o);}setData(state){this.state = state;notify();}getData(){return state;}notify(){原创 2014-04-01 22:19:11 · 439 阅读 · 0 评论 -
Command设计模式
Receiver类do(){}undo(){}ConcreteCommand类构造函数public ConcreteCommand(Receiver rec){this.rec = rec;}public bool do(){return rec.do();}public bool undo(){return rec.undo();}原创 2014-04-01 22:44:44 · 429 阅读 · 0 评论 -
[thinking in java]对象保存到什么地方
程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内存的分配。有六个地方都可以保存数据:(1) 寄存器。这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没有直接的控制权,也不可能在自己的程序里找到寄存器存在的任何踪迹。(2) 堆栈。驻留于常规RAM(随机访问存储器)区转载 2014-04-04 17:43:18 · 427 阅读 · 0 评论 -
耦合和内聚
1.什么是内聚?什么是耦合?内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系;耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。2.内聚分为哪几类?耦合分为哪几类?内聚有如下的种类,它们之间的内聚度由弱到强排列如下:(1)偶然内聚。模块中的代码无法定义其不同转载 2014-04-07 18:31:55 · 764 阅读 · 0 评论 -
java collection
在 Java2中,有一套设计优良的接口和类组成了Java集合框架Collection,使程序员操作成批的数据或对象元素极为方便。这些接口和类有很多对抽象数据类型操作的API,而这是我们常用的且在数据结构中熟知的。例如Map,Set,List等。并且Java用面向对象的设计对这些数据结构和算法进行了封装,这就极大的减化了程序员编程时的负担。程序员也可以以这个集合框架为基础,定义更高级别的数据抽象,比转载 2014-03-23 22:26:47 · 398 阅读 · 0 评论 -
java正则表达式
创建正则表达式你可以从比较简单的东西入手学习正则表达式。要想全面地掌握怎样构建正则表达式,可以去看JDK 文档的java.util.regex 的Pattern 类的文档。字符B字符B\xhh16进制值0xhh 所表示的字符\uhhhh16进制值0xhhhh 所表示的Unicode字符转载 2014-09-03 11:07:44 · 460 阅读 · 0 评论