- 博客(21)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 Java中静态成员类及静态内部类的Builder模式构建对象、静态内部类构建单例模式
一、什么是嵌套类嵌套类是指被定义在另一个类的内部的类。嵌套类存在的目的应该只是为他的外围类提供服务。如果嵌套类将来可能会用于其他的某个环境中,它就应该是顶层类。嵌套类有四种:静态成员类、非静态成员类、匿名类和局部类。除了第一种之外,其他三种被称为内部类。二、什么是静态内部类静态成员类是最简单的一种嵌套类。最好把他看做是普通类,只是碰巧被声明在另一个类的内部而已,它可以访问外围类的所有成...
2018-06-23 09:54:51 4824
原创 Java中Collections的emptyList、EMPTY_LIST详解
我们在写方法的时候可能结果集不存在,那我们需要返回null,那我们在调用这个方法的地方就要做一个null判断,这个时候我们就可以使用emptyList或EMPTY_LIST。但是也会有同学说我new ArrayList不就可以了,这样是可以,但是每次我们new 一个集合对象的时候都会有一个初始化空间,占用内存资源,积少成多会浪费很多的资源,Collections中的空集合对象是一个静态常量,在内存...
2018-06-22 22:11:34 19956 5
原创 Java中foreach循环两种实现原理
一、foreach循环Iterator模式首先我们看一个foreach循环的main方法import java.util.Collections;import java.util.List;import java.util.Map;public class Test { public static void main(String[] args) { ...
2018-06-22 22:11:08 8030
原创 Java中private、protected、default、public的区别
私有的(private):只有在声明该成员的顶层类内部才可以访问这个成员包级私有的(package-private):声明该成员的包内部的任何类都可以访问这个成员。从技术上讲,它被称为缺省(default)访问级别,如果没有为成员指定访问修饰符,就采用这个访问级别。受保护的(protected):声明该成员的类的子类可以访问这个成员,并且,声明该成员的包内部的任何类也可以访问这个成员。公有...
2018-06-17 10:23:14 1519
原创 Collections中min和max工具方法详解
以下是java.util.Collections.min()方法和java.util.Collections.min()的声明public static <T extends Object & Comparable<? super T>> T min(Collection<
2018-06-16 09:08:55 19436
原创 fastjson报$ref": $.data[2].indexs[0]循环引用错误
今天在做一个递归的时候遇到输出的数据有$.data[2].indexs[0]的情况,在网上查询了fastjson默认对重复的引用使用 ref方式。DisableCircularReferenceDetect:消除对同一对象循环引用的问题,默认为falseFastJson提供了SerializerFeature.DisableCircularReferenceDetect这个序列化选项,用来...
2018-06-13 20:16:26 2643
原创 Collections利用现有容器生成可检查容器checkedCollection、checkedList、checkedSet、checkedMap
Collections可利用现有容器生成检查容器 //传入任何Collection子类,返回一个检查Collection对象 public static <E> Collection<E> checkedCollection(Collection<E> c,Class<E> type) ...
2018-06-12 08:58:28 1958 5
原创 commons-codec使用简介
commons-codec是Apache开源组织提供的用于摘要运算、编码解码的包。常见的编码解码工具Base64、MD5、Hex、SHA1、DES等。Base64编码 System.out.println(&amp;quot;===============base64======================&amp;quot;); Base64 base64 = new Base64...
2018-06-11 16:01:23 48127 2
原创 Common-lang任务执行时间监视器StopWatch
StopWath是apache commons lang包下的一个任务执行时间监视器,它可以记录程序从开始执行到结束所花费的时间,也可以记录程序中的某一段时间差。 主要的方法:start开始计时split设置split点getSplitTime获取从start 到 最后一次split的时间reset重置计时suspend暂停计时, 直到调用resume()后才恢复计时res...
2018-06-08 19:25:09 2026
原创 DurationFormatUtils中formatPeriod计算两个日期之间的时间差
formatPeriod方法用于计算两个时间之间的片断,然后转化成相应的日期字符串类型,即能表示的最大单位转换的格式化格式是y-M-d H:m:s起始日期不能大于结束日期,否则会返回异常的数据计算两个日期之间相差的天数 Date date1 = new Date(); date1 = DateUtils.addDays(date1, -12); ...
2018-06-08 18:44:24 3379
原创 Collections框架中sort自然排序binarySearch二分查找详解
今天要用到Collections的binarySearch方法的查找功能,但是要是用二分查找的List必须是有序的,也就是使用 Collections中的sort方法进行自然排序。在对List中的数据查找的时候我们经常会用到contains、find、indexOf等线性查找方法,已经有很多前辈对线性查找和二分查找的性能做过测试,我们就站在前辈的肩膀上直接得出我们的结论,有兴趣的同学可以...
2018-06-08 09:48:53 4212
原创 linux从一台服务器复制文件到另外一台服务器scp命令
首先看下示例: scp ~/gogoal_platform/xxxx/api/ggindex/ggindex.jar developer@10.10.168.62:~/gogoal_platform/xxxx/api/ggindex/首先scp命令是用在文件所在的服务器上/gogoal_platform/xxxx/api/ggindex/ggindex.jar是文件的地址deve...
2018-06-06 09:03:11 10477
原创 Java中静态工厂方法命名规则
静态工厂方法常见的命名方式:valueOf——不太严格的讲,该方法返回的实例与它的参数具有相同的值。这样的静态工厂方法实际上是类型转换方法。of——valueOf的一种更为简洁的替代,在EnumSet中使用并流行起来。getInstance——返回的实例是通过方法的参数来描述的,但是不能够说与参数具有同样的值。对Singleton来说,该方法没有参数,并返回唯一的实例。newInsta...
2018-06-03 17:54:47 2793
原创 Java类的静态成员类
遇到多个构造器参数时要考虑用构建器:静态工厂和构造器有个共同的局限性,它们都不能很好的扩展到大量的可选参数。JavaBeans模式,在这种模式下调用一个无参数构造器来创建对象,然后调用setter方法来设置每个必要的参数,以及每个 相关的可选参数。Builder模式,既能保证向重载构造器模式那样安全,也能保证像JavaBeans模式那么好的可读性。静态内部类模式:package...
2018-06-03 17:38:26 2408
原创 java反射判断实例的各种方法总结
package thread;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.List;import play.Play;public class TestName { ...
2018-06-02 10:37:52 2353
原创 java反射中getCanonicalName、getName、getSimpleName的区别
1.看如下实例:package thread;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.List;import play.Play;public class Test...
2018-06-02 10:16:50 2133
原创 Play中获取web服务中所有类的实例的方法
import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.List;import play.Play;public class Teacher { public static void main(String[] args) { ...
2018-06-02 10:00:20 326
原创 Java反射方法asSubclass判断一个类是否是另一个类的子类
在Java中我们判断一个类是否是另外一个类的实例对象通常使用instanceofa instanceof B另外我们还有一个方法是asSubclass,它将一个类转换成另外一个的实例,如果转换异常就会抛出ClassCastException异常,也就是这个类不是另外一个类的实例;所以我们可以通过它抛出异常的方式来判断一个类是否是另外一个类的实例;import java.lang...
2018-06-02 09:54:10 8703 2
原创 Java反射通过父类对象调用子类的方法
在做网站开发的时候我们都会写一个控制器,控制器的作用就是接收客户端的请求,有时候为了控制访问入口的唯一性,方便我们监控用户访问的数据;最近在抽时间写一个底层转发控制器请求的工具,说通俗一点就是首先我定义一个抽象类或者接口A(实现类A就标识为控制器),然后定义很多继承或者实现了A类的类B(用户真正的Controller);1.定义一个抽象类作为所有控制器的父类package thread;...
2018-06-02 09:39:32 9724 1
原创 java反射中getMethod*和getDeclaredMethod*的区别
官方文档是这样说名的:getDeclaredMethod*获取的是类自身声明的所有方法,包含public、protected和private方法getMethod*获取的是类的所有共有方法,这就包括自身的所有public方法,和从基类继承的、从接口实现的所有public方法。为了更好的说明,下面我们做个示例来验证,我们用getMethods方法来验证,而不是用getMethod方法来...
2018-06-02 08:22:34 5644 2
原创 Java通过反射机制调用某个类的方法
通过反射机制调用类的方法,主要用到下面的方法:public Object invoke(Object obj, Object... args)参数:obj是调用基础方法的实例对象调用基础方法索要传递的参数,参数是一个变长类型下面是一个具体的示例:package thread;import java.lang.reflect.InvocationTargetExce...
2018-06-02 08:03:51 30580 3
HTML5 websocket的headr如何加入扩展参数
2018-01-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人