
java
文章平均质量分 56
T240178168
这个作者很懒,什么都没留下…
展开
-
UML类图与类的关系详解-UML一波流系列
http://peterwei.iteye.com/blog/979557原创 2016-12-11 20:23:59 · 252 阅读 · 0 评论 -
重构——代码的坏味道
[size=medium]重构——代码的坏味道1. Duplicated Code(重复的代码) 臭味行列中首当其冲的就是Duplicated Code。如果你在一个以上的地点看到相同的程序结构,那么当可肯定:设法将它们合而为一,程序会变得更好。 最单纯的Duplicated Code就是[同一个class内的两个函数含有相同表达式(expression)]。这时候你需要做的就...原创 2014-01-04 00:17:23 · 268 阅读 · 0 评论 -
toString() ,String,String.valueOf
[size=medium]常用的方法有Object#toString(),(String)要转换的对象,String.valueOf(Object)等。下面对这些方法一一进行分析。方法1:采用 Object#toString()方法请看下面的例子: Object object = getObject(); System.out.println(object.to...2013-07-20 00:52:38 · 134 阅读 · 0 评论 -
jre与jdk的区别
[size=medium]JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。如果安装了...2013-07-20 00:48:02 · 124 阅读 · 0 评论 -
Java编译原理
[size=medium]Java编译原理1. 关于动态加载机制学习Java比C++更容易理解OOP的思想,毕竟C++还混合了不少面向过程的成分。很多人都能背出来Java语言的特点,所谓的动态加载机制等等。当然概念往往是先记住而后消化的,可有多少人真正去体会过动态加载的机制,试图去寻找过其中的细节呢? 提供大家一个方法:在命令行窗口运行Java程序的时候,加上这个很有用的参数:java...原创 2013-01-22 21:11:33 · 137 阅读 · 0 评论 -
JVM的基本工作原理和特点
[size=medium]JVM的基本工作原理和特点 操作系统装入jvm是通过jdk中java.exe来完成,通过下面4步来完成jvm环境.1.创建jvm装载环境和配置2.装载jvm.dll3.初始化jvm.dll并挂界到JNIENV(JNI调用接口)实例 4.调用JNIEnv实例装载并处理class类。在我们运行和调试java程序的时候,经常会提到一个jv...2013-01-22 21:08:02 · 123 阅读 · 0 评论 -
Math的属性之对数
[size=medium]Math.LN2 2的自然对数Math.LN10 10的自然对数Math.LOG2E 以2为底E的对数Math.LOG10E 以10为底E的对数Math.log(x) 返回x的对数(以e为准)例如求某数的对数 以2为准public class Test {public static void main(String[] args) {/...2013-01-22 11:20:13 · 323 阅读 · 0 评论 -
面试题50
[size=medium]【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题public class lianxi01 {public static void main(String[] args) {System.out.println("第1个月的...原创 2013-01-14 23:37:15 · 110 阅读 · 0 评论 -
JAVA面试题2012(1)
[size=medium]*** JAVA面试题. *** 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他 package public √ √ √ √ protected √ √ √ × friendly √ √ × × pr...原创 2013-01-14 23:33:54 · 483 阅读 · 0 评论 -
进程与线程
[size=medium] 一 程序只是一组指令的有序集合, 二 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位; 三 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一...原创 2012-09-19 19:38:46 · 95 阅读 · 0 评论 -
String的用法收集
[size=medium]构造方法: String() 初始化一个新创建的 String 对象,它表示一个空字符序列。 String(byte[] bytes) 构造一个新的 String,方法是使用平台的默认字符集解码字节的指定数组。 String(byte[] bytes, int offset, int length) ...原创 2012-09-11 23:26:58 · 166 阅读 · 0 评论 -
stringbuffer 的缓冲长度
[size=medium]1 StringBuffer缓冲长度,或者叫容量会随着内部储存的字符串长度而翻倍增大。 比如用了49个字符,容量为50,再加入2个字符时,容量会从50变成100,此时字符串长度为51 初始容量默认为16,也可以自定义更搜索小或更大2 stringbuffer 的方法声明都有 synchronized 关键字, 所以 stringbuf...原创 2014-01-08 22:06:48 · 845 阅读 · 0 评论 -
String,StringBuffer和StringBuild性能
[size=medium]在不考虑线程安全的前提下,StringBuild性能最高,StringBuffer次之,String比较差.为什么StringBuffer的性能比String高?主要原因在于String类是不可变类,任何对String引用指向的字符串作出的修改都 会导致生成新的字符串(对象),而对StringBuffer的修改则不会导致新对象的产生。大家都知道,生成新对象是十分耗...原创 2014-01-08 22:09:08 · 148 阅读 · 0 评论 -
201612-8笔记
数据库设计1.主表明确 主表一直是主,里面不需要关联关系2.过程数据 数据的重要性,有必要分区原创 2016-12-08 22:46:44 · 208 阅读 · 0 评论 -
OOP和AOP区别
[size=large]OOP(面向对象编程)针对业务处理过程的实体及其属性和行为进行抽象封装,以获得更加清晰高效的逻辑单元划分。而AOP则是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。这两种设计思想在目标上有着本质的差异。 举个简单的例子,对于“雇员”这样一个业务实体进行封装,自然是OOP/OOD的任务,我们可以为其...原创 2015-04-27 17:18:59 · 577 阅读 · 0 评论 -
xls与csv文件是什么区别?功能和作用上有什么不同
[size=medium]1 xls 文件就是Microsoft excel电子表格的文件格式。我想就不用多介绍了吧,学校里多少都学过的。CSV是最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中。 此文件,一行即为数据表的一行。生成数据表字段用半角逗号隔开。2 CSV是文本文件,用记事本就能打开,XLS是二进制的文件只有用EXCEL才能打同时CSV...原创 2013-11-03 22:30:47 · 1942 阅读 · 1 评论 -
使用Eclipse开发Java Web过程中Debug调试的使用方法
[size=medium]这里介绍的是在Eclipse中的Debug调试。首先右击项目选择Debug As -- Debug on Server 或者点击Server面板的小昆虫图标,启动Debug模式。运行web项目,进行到需要调试的地方,在执行页面操作之前,在即将要运行的代码中添加断点,然后继续执行页面操作,当代运行到断点处时,Eclipse自动弹出,进入Debug模式,这...原创 2014-03-06 21:35:40 · 326 阅读 · 0 评论 -
正则表达式的基础语法
[size=large]首先让我们看两个特殊的符号'^'和'$'。他们的作用是分别指出一个字符串的开始和结束。例子如下: "^The":表示所有以"The"开始的字符串("There","The cat"等); "of despair$":表示所以以"of despair"结尾的字符串; "^abc$":表示开原创 2015-01-06 23:08:24 · 150 阅读 · 0 评论 -
Filter过滤器在Web.xml中几个标签说明
[size=x-large]loglee.LogFilter log/*在Servlet2.4中filter-mapping中加入了新的标签 ,里面有4个值即REQUEST, FORWARD,INCLUDE和ERROR,默认不写这个标签的时候是REQUEST,该标签是根据客户端传过来的地址进行过滤,FORWARD方法传过来的reque...原创 2015-01-06 22:58:58 · 724 阅读 · 0 评论 -
JSP中out.print 和 out.write 区别
[size=large]jsp中的out对象是JspWriter类型的.而JspWriter继承了java.io.Writer . write方法是在在父类Writer中定义的,print方法是在子类JspWriter中定义的.重载的print方法可以将各种类型的数据转换成字符串的形式输出.而重载的write方法只能输出字符/字符数组/字符串等与字符相关的数据.而且如果使用这两种方法输出值为nul...原创 2015-01-06 22:55:11 · 241 阅读 · 0 评论 -
iBATIS CDATA
[size=medium]在ibatis 中,SQL语句经常会出现一些特殊符号,比如:> < 等符号,在xml中会被转义,解析时会出错这样可以使用 进行常量标识,这样里面的SQL内容会以文本的形式存在 ,不会被解析如:另外,还有ibatis 中:> 可以表示大于号,< 表示小于号如: where score > 90 表示:where score > 90...原创 2014-02-27 23:52:27 · 173 阅读 · 0 评论 -
isNotEmpty isNotNull
[size=medium]ibatis : isNotEmpty:过滤空串""和空null isNotNull: 只过滤空null php : isset:过滤null和未定义 isEmpty:过滤false、空串""、nullExp SELECT LPM.WORK_TYPE "workType", LPM.DE...2014-01-27 14:20:52 · 365 阅读 · 0 评论 -
读书:《代码整洁之道》
[size=large]1. 本书内容概要核心观点:Bob大叔(即Robort.C.Martin,多本畅销书的作者,业界称其Bob大叔)认为软件质量,不仅依赖于架构及项目管理,而且与代码质量紧密相关。而代码质量与其整洁度成正比。核心内容:Bob大师和Object Mentor的专家以这个强大团队十几年的经验,总结了如何在代码中达到clean code,即整洁和干净的代码的经验规则。豹:...原创 2014-01-17 00:10:17 · 200 阅读 · 0 评论 -
反射原理
[size=medium]Java的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。灵活掌握Java反射机制,对大家以后学习框架技术有很大的帮助。那么什么是Java的反射呢? 大家都知道,要让Java程序能够运行,那么就得让Java类要被Java虚拟机加载。Java类如果不被Java虚拟机加载,是不能正常运行的。现在我们运行的所有的程序都是在编译期的时候就已经知道了你...原创 2012-09-11 23:19:48 · 119 阅读 · 0 评论 -
gc机制
[size=medium]一、谁在做Garbage collection垃圾回收机制是放在JVM中,由JVM来负责回收垃圾,我们只需要创建对象来分配空间,当对象无用时则不用担心空间回收的问题。 二、对象什么时候被回收 对象的生命周期与作用域无关,与引用有关。当一个对象被多个引用所指向,当该对象不再有任何引用指向它时,这个对象就被抛弃了,就可以被垃圾回收机制回收。比如当某个对象不存在任何...原创 2012-09-11 23:15:54 · 152 阅读 · 0 评论 -
java集合框架
[size=medium]Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection 的元素(Elements)。一些 Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如...原创 2012-08-22 22:14:49 · 100 阅读 · 0 评论 -
ArrayList,LinkedList,Vector区别
[size=medium]List,Set,Map有什么区别?list 有放入顺寻,可以重复set无放入顺序,不可以重复map键值对存储。键不可以重复,值可以重复一、同步性ArrayList,LinkedList是不同步的,而Vector是的。所以如果要求线程安全的话,可以使用ArrayList或LinkedList,可以节省为同步而耗费开销。但在多线程的情况下,有...2012-08-20 22:10:41 · 143 阅读 · 0 评论 -
final,finally,finalize的区别
[size=medium]这是一道再经典不过的面试题了,我们在各个公司的面试题中几乎都能看到它的身影。final、finally和finalize虽然长得像孪生三兄弟一样,但是它们的含义和用法却是大相径庭。这一次我们就一起来回顾一下这方面的知识。 我们首先来说说final。它可以用于以下四个地方: 定义变量,包括静态的和非静态的。 定义方法的参数。 定义方法。 ...2012-08-19 23:23:23 · 100 阅读 · 0 评论 -
创建xml文件
[size=medium] public static void testDelete() { File file = new File("文件名"); //如果文件夹不存在则创建 if(file.exists()) { file.delete(); } Document doc = Document...原创 2012-11-22 18:13:00 · 149 阅读 · 0 评论 -
Java对象序列化
[size=medium]序列化的过程就是对象写入字节流和从字节流中读取对象。将对象状态转换成字节流之后,可以用java.io包中的各种字节流类将其保存到文件中,管道到另一线程中或通过网络连接将对象数据发送到另一主机。对象序列化功能非常简单、强大,在RMI、Socket、JMS、EJB都有应用。对象序列化问题在网络编程中并不是最激动人心的课题,但却相当重要,具有许多实用意义。 1.对...2012-08-14 22:15:33 · 112 阅读 · 0 评论 -
Java中重载和重写的区别
[size=medium] (1)方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2)Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, ...2012-08-13 22:48:14 · 95 阅读 · 0 评论 -
JAVA线程池原理以及几种线程池类型介绍
[size=medium]在什么情况下使用线程池? 1.单个任务处理的时间比较短 2.将需处理的任务的数量大 使用线程池的好处: 1.减少在创建和销毁线程上所花的时间以及系统资源的开销 2.如不使用线程池,有可能造成系统创建大量线程而导致消耗完系统内存以及”过度切换”。 线程池工作原理:为什么要用线程池?诸如 ...原创 2012-08-12 02:52:45 · 120 阅读 · 0 评论 -
java中equals和==的区别
[size=medium]java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。==比较的是...2012-08-12 02:50:39 · 95 阅读 · 0 评论 -
Future
[size=medium]在Java中,如果需要设定代码执行的最长时间,即超时,可以用Java线程池ExecutorService类配合Future接口来实现。 Future接口是Java标准API的一部分,在java.util.concurrent包中。Future接口是Java线程Future模式的实现,可以来进行异步计算。Future模式可以这样来描述:我有一个任务,提交给了Futu...原创 2012-10-27 23:10:24 · 130 阅读 · 0 评论 -
synchronized关键字、Callable以及线程池
[size=medium]Synchronized关键字从1.0版本开始,Java中的每一个对象都有一个内部锁。如果一个方法用synchronized关键字生命,那么对象的锁将保护整个方法。也就是说,要调用该方法,线程必须获得内部的对象锁。换句话说:public synchronized void method(){ method body}等价于public ...原创 2012-10-27 22:53:21 · 288 阅读 · 0 评论 -
Java性能总结一
[size=medium]private static Credit BaseCredit = new Credit();public static Credit getNewCredit() {return (Credit) BaseCredit.clone();}Java语言习惯用语1。循环 在重要的循环里,消除循环终止判断时的方法调用。例如:将for(...2012-08-23 21:14:55 · 176 阅读 · 0 评论 -
try、catch、finally、return的执行顺序
[size=medium]try、catch、finally、return的执行顺序 public class JVMTest { public static void main(String[] args){ System.out.println("aa:" + aa()); } public static int aa(){ int a = 1; int b =...原创 2012-08-23 21:18:41 · 165 阅读 · 0 评论 -
线程间实现同步互斥的方法
[size=medium]1.临界区(Critical Section):适合一个进程内的多线程访问公共区域或代码段时使用。 API: VOID EnterCriticalSection(LPCRITICAL_SECTION lpCriticalSection); //进入临界区 VOID LeaveCriticalSection(LPCRITICAL_SECTION ...原创 2012-12-17 22:55:13 · 392 阅读 · 0 评论 -
进程通信
[size=medium]进程通信 (1)进程的同步与互斥一般来说同步反映了进程之间的协作性质,往往指有几个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存在及作用,通过交换信息完成通信。如接力比赛中一组队员使用接力棒等。进程互斥体现了进程之间对资源的竞争关系,这时进程相互之间不一定清楚其它进程情况,往往指多个任务多个进程间的通讯制约,因而使用更广泛。如打篮球时双方挣...原创 2012-12-17 22:51:08 · 162 阅读 · 0 评论 -
进程间通信:Windows下进程间通信的手段
[size=medium]1 进程与进程通信 进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。多进程/多线程是Windows操作系统的一个基本特征。Microsoft Win32应用编程接口(Application Programming Interface, API)提供了大量支持应用程序间数据共享和交换的机制,这...原创 2012-12-17 22:49:34 · 160 阅读 · 0 评论