![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java相关
文章平均质量分 63
mongolian2007
这个作者很懒,什么都没留下…
展开
-
单例/单体模式(Singleton)
单例/单体模式(Singleton)首先,单例模式是对象的创建模式之一,此外还包括工厂模式。单例模式的三个特点:1,该类只有一个实例2,该类自行创建该实例(在该类内部创建自身的实例对象)3,向整个系统公开这个实例接口Java中大概是这个样子12345678910111213cla原创 2014-03-07 20:31:03 · 353 阅读 · 0 评论 -
Java中的流(一)
Java语言的输入输出功能是十分强大而灵活的,对于数据的输入和输出操作以“流”(stream)的方式进行。J2SDK提供了各种各样的“流”类,用以获取不同种类的数据,定义在包java.io中。程序中通过标准的方法输入或输出数据。 Java中的流可以从不同的角度进行分类: 按照流的方向不同:分为输入流和输出流。 按照处理数据单位的不同:原创 2014-10-08 15:54:51 · 151 阅读 · 0 评论 -
四种操作xml的方式: SAX, DOM, JDOM , DOM4J的比较
1. 介绍1)SAX SAX处理的优点非常类似于流媒体的优点。分析能够立即开始,而不是等待所有的数据被处理。而且,由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中。这对于大型文档来说是个巨大的优点。事实上,应用程序甚至不必解析整个文档;它可以在某个条件得到满足时停止解析。一般来说,SAX还比它的替代者DOM快许多。 选择DOM还是选择SAX?转载 2014-10-08 16:07:59 · 111 阅读 · 0 评论 -
J2EE的多层模型(二)交互
上篇文章中说到J2EE的四层经典模型和组成每层的一些相应组件。 J2EE在大的框架上已经规定好,但是每层之间选择合适的组件进行组合很重要,合理的搭配可以在完成功能的同时更好的解耦,有好的维护性和扩展性,易于修改。 基于Java技术的Web应用中,JSP作为很重要的一部分,既可以用于开发小型的Web站点、也可以用于开发大型的、企业级的应用程序。Web浏览器是三层结构原创 2014-10-09 16:28:07 · 194 阅读 · 0 评论 -
J2EE的多层模型(一)架构概述
对J2EE的宏观认识上篇文章大概的介绍了一下。J2EE是一个标准,这个标准不仅定义了基本的规范和接口,也有一些比较固定的架构模型。 J2EE使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。 在传统的不分层的软件架构中,客户端担当了过多的角色而显得庞大而且不容易进行维护和修改,扩展性非常差,它使得重用业务逻辑和界面逻原创 2014-10-09 15:57:48 · 466 阅读 · 0 评论 -
java中equals,hashcode和==的区别
两个对象值相同(x.equals(y) == true),则一定有相同的hash code;这是java语言的定义:因为:Hash,一般翻译做“散列”,也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成原创 2014-10-14 16:41:39 · 203 阅读 · 0 评论 -
Java中== equals hashcode浅析:
Java中== equals hashcode浅析:1. '=='是用来比较两个变量(基本类型和对象类型)的值是否相等的, 如果两个变量是基本类型的,那很容易,直接比较值就可以了。如果两个变量是对象类型的,那么它还是比较值,只是它比较的是这两个对象在栈中的引用(即地址)。对象是放在堆中的,栈中存放的是对象的引用(地址)。由此可见'=='是对栈中的值进行比较的。如果要比较堆中对象的内容是否相原创 2014-10-14 16:44:32 · 199 阅读 · 0 评论 -
JAVA中堆栈和内存分配
(一)、栈、堆1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域 :存放静态成员(static定义的)5. 常量池 :存放字符串常量和基本类型常量(pu原创 2014-10-14 17:28:51 · 165 阅读 · 0 评论 -
Hashmap实现原理
0.参考文献:hash算法 (hashmap 实现原理)Java实现的散列表1.HashMap的数据结构 数组的特点是:寻址容易,插入和删除困难;而链表的特点是:寻址困难,插入和删除容易。那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的,这就是我们要提起的哈希表,哈希表有多种不同的实现方法,我接下来解释的是最常用的一种方法—— 拉链法,我们可原创 2014-10-16 10:41:47 · 179 阅读 · 0 评论 -
Java栈与堆
Java栈与堆 ----对这两个概念的不明好久,终于找到一篇好文,拿来共享 1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,原创 2014-10-14 17:27:08 · 157 阅读 · 0 评论 -
Java中的流(二)
上一篇文章通过字节流和字符流来总结流,这里通过节点流和处理流总结一下流的具体用法。 节点流的分类: 节点流分别对File(文件),Array(内存中的一个数组),String(字符串),Pipe(管道)进行处理。 处理流的分类: 常用的处理流有:缓冲流,转换流,数据流,对象流,打印流。原创 2014-10-08 16:04:21 · 113 阅读 · 0 评论 -
java 内存分析
内存分析 这次学习Java,第一次接触内存中的程序的具体执行过程。感觉理解内存中数据的进出对程序的理解确实很有帮助。 Java的执行过程在内存中一共占四个区域: heap (堆)区:用来存放new出来的东西,是一个对象的真正存放位置。堆用于动态分配和释放程序所使用的对象。 stack (栈)区:用来存放局部原创 2014-10-08 15:48:22 · 110 阅读 · 0 评论 -
CKEDITOR使用与配置
安装: 下载CKEDITOR的文件,解压后复制到工程的WEBROOT目录下就OK!引用CKEDITOR的JS文件: 新建JSP页面,添加其JS文件 注意:1.src的路径。 2.不要写成样式,在现有的3.0.1版本中会出现CKEDITOR未定义的脚本错误提示,致使不能生成编辑器。替换TEXTAREA标签: textarea rows="30"转载 2014-01-03 01:32:09 · 272 阅读 · 0 评论 -
java collection接口
1、Collection 和 Collections的区别。Collections是个java.util下的类,它包含有各种有关java集合操作的静态方法。 Collection是个java.util下的接口,它是各种java集合结构的父接口 2、List, Set, Map是否继承自Collection接口? List,Set是 Map不是 3、ArrayList和Vec转载 2014-03-13 16:47:16 · 302 阅读 · 0 评论 -
JAVA中Collection接口和Map接口的主要实现类
Collection接口Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。所有实现转载 2014-03-13 16:46:07 · 302 阅读 · 0 评论 -
Float控制精度 取两位小数
JAVA如何把一个float四舍五入到小数点后2位,4位,或者其它指定位数. 以前以为很容易,一直没在意,今天突然用到了,才发现,系统没有这样的函数.狂晕,同事们用的方法为,先转成String,再取其中几位,再转成float型,(如:String.valueOf(c).substring(0,String.valueOf(c).indexOf(".") + 3)):我觉得这样不爽,于是原创 2014-04-23 10:26:28 · 1490 阅读 · 0 评论 -
Float控制精度 取两位小数
JAVA如何把一个float四舍五入到小数点后2位,4位,或者其它指定位数. 以前以为很容易,一直没在意,今天突然用到了,才发现,系统没有这样的函数.狂晕,同事们用的方法为,先转成String,再取其中几位,再转成float型,(如:String.valueOf(c).substring(0,String.valueOf(c).indexOf(".") + 3)):我觉得这样不爽,于是原创 2014-04-23 10:26:42 · 1105 阅读 · 0 评论 -
Java过滤器
过滤器就是在源数据和目的数据之间起过滤作用的中间件。 Web应用中,在处理请求时,经常有一些公共的工作,比如设置字符集。这样的工作需要写在每个页面,这样的写法费力且不好修改。使用过滤器就像在这些流程前加了一道拦,将需要进行的操作放到拦里执行,而所有经过这道拦的流程都会“被”执行该操作。 开发一个过滤器必须实现Java定义好的javax.ser原创 2014-10-08 15:23:56 · 149 阅读 · 0 评论 -
Java监听器
监听器的作用是监听Web应用程序中某一个对象,监听客户端的处理动作,然后做出相应的处理。 Java Web应用程序中,Servlet容器提供了多种监听器的接口,使用的时候根据需求选择特定的接口实现就行。这些接口都是继承的java.util包中的EventListener接口。 可以看出,监听器的种类确实很多。 常原创 2014-10-08 15:29:52 · 144 阅读 · 0 评论 -
web.xml中 listener、filter、servlet等 加载顺序
Web项目的很多信息都配置在web.xml文件中,而且项目启动时,容器(下文以Tomcat为例)会先读配置文件,那web.xml文件中的那么多内容是按照什么顺序加载的呢? 这个读取顺序跟文件内容的上下文顺序基本没有关系,也就是说这些配置信息的读取顺序是一定的,跟他写在哪个位置没关系,写到最后的可能第一个执行。 分析: (1)因为无论是原创 2014-10-08 15:34:01 · 121 阅读 · 0 评论 -
Java语言基础
标识符 所有的语言都有变量,方法等,只要有这些东西就一定会用到标识符,标识符就是自己给变量,方法或者类起的名字。而且他们几乎都有自己的一套规则。名字可以起,但不可以随便起。 Java标识符命名规则: (1)由字母,"_","$"或数字组成,其他符号不可用。原创 2014-10-08 15:41:23 · 126 阅读 · 0 评论 -
JDK 1.7新特性
jdk1.7新特性1 对集合类的语言支持; 2 自动资源管理; 3 改进的通用实例创建类型推断; 4 数字字面量下划线支持; 5 switch中使用string; 6 二进制字面量; 7 简化可变参数方法调用;8 新增一些取环境信息的工具方法;9 Boolean类型反转,空指针安全,参与位运算;10 两个char间的equals;11 安全的加减乘除;转载 2014-10-21 16:21:27 · 187 阅读 · 0 评论