随笔- 348
文章- 6
评论- 117
阅读-
196万
随笔分类 - Java
43、Java动态代理一——动态类Proxy的使用
摘要:1.什么是动态代理? 答:动态代理可以提供对另一个对象的访问,同时隐藏实际对象的具体事实。代理一般会实现它所表示的实际对象的接口。代理可以访问实际对象,但是延迟实现实际对象的部分功能,实际对象实现系统的实际功能,代理对象对客户隐藏了实际对象。客户不知道它是与代理打交道还是与实际对象打交道。2.为什么
阅读全文
42、Java国际化
摘要:简介 国际化的英文单词是Internationalization,有时检测I18N,类似于I18N还有L10N,是Location本地化的简写。 Java或计划主要通过如下三个类实现 1、java.util.ResourceBoundle:用于加载国家和语言资源包 2、java.utl.Local:
阅读全文
41、java与mysql乱码的问题
摘要:解决方法一:(最重要的一种方法)你看下my.ini,有无 [MySQL] default-character-set=utf8 [client] default-character-set=utf8 [mysqld] default-character-set=utf8 然后建立表时,也要用(比如)
阅读全文
40、JDBC相关概念介绍
摘要:1.1、数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡,同样道理,我们安装好数据库之后,我们的应用程序也是不能直接使用数据库的,必须要通过相应的数据库驱动程序,通过驱动程序去和数据
阅读全文
39、集合线程安全问题
摘要:由于Set、List和Map都是线程不安全的,为了同步控制,Collections类提供了多个synchronizedXxx()方法,该方法可以将指定集合包装成线程同步的集合,从而可以解决多线程并发访问集合时的线程安全问题,例如:
阅读全文
38、各Set实现类的性能分析
摘要:HashSet和TreeSet是Set的两个典型实现,到底如何选择HashSet和TreeSet呢?HashSet的性能总是比TreeSet好(特别是最常用的添加、查询元素等操作),因为TreeSet小额外的红黑树算法来维护集合元素的次数。只有当需要一个保持排序的Set时,才应该用TreeSet,否
阅读全文
37、EnumSet详解
摘要:EnumSet类也是有顺序的,EnumSet按照枚举值在Enum类内定义的顺序决定集合元素的顺序 EnumSet在内部已位向量的形式存储,这种存储方式非常紧凑、搞笑,因此EnumSet占用内存很小,而且运行效率很好。 EnumSet集合不允许加入null元素 EnumSet常用的方法: 1)、Enu
阅读全文
36、TreeSet详解
摘要:TreeSet是SortedSet接口的实现类,TreeSet可以保证元素处于排序状态。与HashSet相比,TreeSet还提供了如下几个而外的方法: 1)、Comparator comparator():如果TreeSet采用了定制排序,则方法返回定制排序所使用的Comparator;如果Tre
阅读全文
35 、HashSet详解
摘要:HashSet特点 1、不能保证元素的排列顺序 2、没有重复元素 3、HashSet不是同步的,多个线程同时访问一个HashSet,需要通过代码来保持同步 4、集合元素可以是null 当向HashSet中添加元素时,通过对象的HashCode方法来决定元素的存储位置。当两个元素equals相同,Ha
阅读全文
34、枚举详解
摘要:知识点介绍1、枚举可以实现一个或多个接口。枚举默认继承于java.lang.Enum类,而不是Object类。Enum类实现了java.lang.Serializable和java.lang.Comparable两个接口2、使用enum定义、非抽象的枚举默认会使用final修饰,因此枚举不能派生子类
阅读全文
33、深入理解Java的接口和抽象类
摘要:深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下
阅读全文
31、Arrays数组排序(续)——自定义排序
摘要:自定义的类要按照一定的方式进行排序,比如一个Person类要按照年龄进行从小到大排序,比如一个Student类要按照成绩进行由高到低排序。 这里我们采用两种方式,一种是使用Comparable接口:让待排序对象所在的类实现Comparable接口,并重写Comparable接口中的compareTo
阅读全文
30、Arrays工具类
摘要:1.查询元素 int binarySearch(type[] a,type key):使用二分法查询key元素值在a数组中出现的索引;如果a数组不包含key元素,则返回负数。调用该方法时要求数组中元素已按升序排列,这样才能得到正确结果 int binarySearch(type[] a,int fr
阅读全文
29、java中阻塞队列
摘要:阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新的元素。同样,试图往已满的阻塞队列中添加新元素的线程同样也会被阻塞,直到其他的线程使队列重...
阅读全文
28、队列和栈
摘要:1、队列Queue 在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Collection接口。Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获...
阅读全文
27、ArrayList和LinkedList的区别
摘要:在Java的List类型集合中,ArrayList和LinkedList大概是最常用到的2个了,细看了一下它们的实现,发现区别还是很大的,这里简单的列一下个人比较关心的区别。类声明ArrayListpublic class ArrayListextends AbstractListimplement...
阅读全文
26、线性表(List)
摘要:1、List List接口是Collection的子接口,List是一个可重复集合2、ArrayList和LinkedList ArrayList和LinkedList是List接口最常见的两个实现类,分别用动态数组和链表的方式实现了List接口。3、get与set方法 List除了继承Col...
阅读全文
25、java中观察者模式Observable和Observer
摘要:如果想要实现观察者模式,则必须依靠java.util包中提供的Observable类和Observer接口观察者设计模式现在很多的购房者都在关注着房子的价格变化,每当房子价格变化的时候,所有的购房者都可以观察得到。实际上以上的购房者就是观察者,他们所关注的房价就是被观察者其中要求,被观察者需要继承O...
阅读全文
24、java操作xml方法
摘要:XML解析方式1. SAX解析方式 SAX(simple API for XML)是一种XML解析的替代方法。相比于DOM,SAX是一种速度更快,更有效的方法。它逐行扫描文档,一边扫描一边解析。而且相比于DOM,SAX可以在解析文档的任意时刻停止解析。 其优缺点分别为: 优点: 解析可以立即开始...
阅读全文