
java
文章平均质量分 54
yjc0403
这个作者很懒,什么都没留下…
展开
-
编译型语言和解释型语言的区别
区别 http://wenku.baidu.com/link?url=qztO87Kh9i1rD1Y3ZFF2wjSRXRmV64OSDT2JnZpI48VNW8ck3rryIB2Pe0EFKHWKYyiPVT9smSddkOMsqAJFMCu8yiEuxzDWdbZZ3w5MHfm原创 2014-12-29 17:23:44 · 113 阅读 · 0 评论 -
HashMap循环遍历方式及其性能对比
只是记录一下别人写的文字,不喜勿喷 http://www.trinea.cn/android/hashmap-loop-performance/原创 2015-12-11 18:05:06 · 105 阅读 · 0 评论 -
耦合关系
耦合的方式很多,依赖、关联、组合、聚合等。原创 2014-11-25 23:58:24 · 654 阅读 · 0 评论 -
Java静态块、非静态块、构造函数在初始化时的执行顺序
Java静态块、非静态块、构造函数在初始化时的执行顺序 执行顺序 没有继承的执行顺序 实现自身的静态属性和静态代码块。实现自身的非静态属性和非静态代码块。执行自身的构造函数。有继承的执行顺序 实现父类的公共静态属性和静态块级代码。实现自身的静态属性和静态块级代码。实现父类的非静态属性和非静态代码块。执行父类的构造函数。实现自身的非...原创 2017-01-16 11:18:49 · 173 阅读 · 0 评论 -
java泛型中<?>和<T>有什么区别?
public static void printColl(ArrayList<?> al){ Iterator<?> it = al.iterator(); while(it.hasNext()) { System.out.prin...原创 2016-01-27 10:07:06 · 686 阅读 · 1 评论 -
json序列化
序列化 原来的做法,是用序列化,我用了Json的序列化,lib-json。一个再传统不过的方法。把数据字段序列化成json保存。取出来的时候进行反序列化。测试100条数据,100次循环,竟然TM的用了15秒。这个是个啥概念?简直惨不忍睹。于是网上搜,找到个Jackson,号称性能XXX的,比Google的gson高XXX。替换之后,速度下降到3700ms。恩。有那么点意思...原创 2016-02-03 17:10:46 · 86 阅读 · 0 评论 -
Java设计模式十:观察者模式(Observer)
观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。它将观察者和被观察者的对象分离开。提高了应用程序的可维护性和重用性。实现观察者模式有很多形式,一种是“注册---通知---撤销注册”的形式。观察者Observer:所有潜在的观察者必须实现观察者接口,这个接口只有update方法,当主题改变时,它被调用。具体观察者Concrete...原创 2016-03-23 15:54:26 · 122 阅读 · 0 评论 -
Java 异常处理的误区和经验总结--转载
本文着重介绍了 Java 异常选择和使用中的一些误区,希望各位读者能够熟练掌握异常处理的一些注意点和原则,注意总结和归纳。只有处理好了异常,才能提升开发人员的基本素养,提高系统的健壮性,提升用户体验,提高产品的价值。 误区一、异常的选择图 1. 异常分类图 1 描述了异常的结构,其实我们都知道异常分检测异常和非检测异常,但是在实际中又混淆了这两种异常的应用。由于非检测异常使...原创 2016-03-25 12:22:49 · 104 阅读 · 0 评论 -
JAVA中Arrays.sort()使用两种方式(Comparable和Comparator接口)对对象或者引用进行排序 -- 转...
一、描述自定义的类要按照一定的方式进行排序,比如一个Person类要按照年龄进行从小到大排序,比如一个Student类要按照成绩进行由高到低排序。这里我们采用两种方式,一种是使用Comparable接口:让待排序对象所在的类实现Comparable接口,并重写Comparable接口中的compareTo()方法,缺点是只能按照一种规则排序。另一种方式是使用Comparator接口:...原创 2016-04-12 11:15:11 · 395 阅读 · 0 评论 -
java socket编程(理论)
java socket编程(理论) 网络编成的两个主要问题 如何准确的定位网络上一台或多台主机找到主机后如何可靠高效的进行数据传输 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象,一般不...原创 2017-02-15 18:35:50 · 114 阅读 · 0 评论 -
java socket编程(实践)
java socket编程(实践) InetAddress InetAddress类用于标识网络上的硬件资源,标识互联网协议(IP)地址。(该类没有构造方法) //获取本机的InetAddress实例InetAddress address =InetAddress.getLocalHost();address.getHostName();//获取计算...原创 2017-02-17 15:54:24 · 203 阅读 · 0 评论 -
java的4个核心技术
Java的4个核心技术 内容只是个人认为主要内容,详细请百度“Java有哪四个核心技术?” 1. java虚拟机: 主要任务是装载class文件并且执行其中的字节码。 Java虚拟机包含一个类装载器,它可以从程序和API中装载class文件。Java API中只有程序执行时需要的那些类才会被装载。字节码由执行引擎来执行。不同的Java虚拟机中,执...原创 2014-11-10 16:01:55 · 101 阅读 · 0 评论 -
代码质量--sonar插件
sonar是一个代码质量平台,支持其他静态代码分析插件的规则(如findbug、PMD、checkStyle) 那怎么给sonar加插件呢? 1. 找到sonar的Web服务器放插件的地方,把插件的jar包放进去,重启web服务,然后再重启runner就好。 ...原创 2015-12-03 18:12:00 · 158 阅读 · 0 评论 -
代码质量----sonar使用
因为sonar是代码质量平台,可以集成静态分下工具(findBug、PMD、checkStyle),所以接下来研究sonar 的下载和部署,以及汉化和集成静态分析工具。 作为一个代码分析平台,sonar主要由下面3部分组成:a. 一个数据库:存放配置信息和分析结果信息(MySQL)b. 一个Web服务器:发布应用,在线浏览,配置分析(sonarqube-5.2)c. 一个客...原创 2015-12-02 19:16:52 · 154 阅读 · 0 评论 -
java堆和栈 -- 自己记录用
引用别人的贴原创 2015-04-14 11:45:35 · 95 阅读 · 0 评论 -
JDK、JRE、JVM区别
很多朋友可能跟我一样,已经使用JAVA开发很久了,可是对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的。 今天特写此文,来整理下三者的关系。 JDK : Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工...原创 2015-07-11 14:04:44 · 107 阅读 · 0 评论 -
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和总结
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和总结 java.lang.Object ....|__java.util.Date ..........|__java.sql.Date/java.sql.Timestamp /java.sql.Time【父类】java.util.Date日期格式为:年月日...原创 2015-07-14 18:01:39 · 108 阅读 · 0 评论 -
Serializable接口的作用
实现java.io.Serializable 接口的类是可序列化的。没有实现此接口的类将不能使它们的任一状态被序列化或逆序列化。 序列化类的所有子类本身都是可序列化的。这个序列化接口没有任何方法和域,仅用于标识序列化的语意。允许非序列化类的子类型序列化,子类型可以假定负责保存和恢复父类型的公有的、保护的和(如果可访问)包的域的状态。只要该类(扩展)有一个无参构造子,可初始化它的状态,那么...原创 2015-07-18 12:53:02 · 138 阅读 · 0 评论 -
serialVersionUID作用
serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常,即是InvalidCastE...原创 2015-07-18 13:52:00 · 115 阅读 · 0 评论 -
用工具类中的值代替“UTF-8”字符串
当开发时,要用到 “UTF-8” 这个字符串,但又不想直接写字符串这么捞。 String aa = CharEncoding.UTF_8; 同时还有:ISO_8859_1US_ASCIIUTF_16UTF_16BEUTF_16LEUTF_8...原创 2015-08-10 14:45:35 · 312 阅读 · 0 评论 -
Windows环境下却换jdk失效
本来安装的是jdk1.7,然后下载个jdk1.6后,修改环境变量中的JAVA_HOME后,再重新查看java -version,发现版本没有改变,那就是修改jdk失效了。 原因:在安装JDK1.7时,自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录,由于这个目录在WINDOWS环境变量中的优先级高...原创 2015-10-19 14:59:31 · 157 阅读 · 0 评论 -
Java中的ReentrantLock和synchronized两种锁定机制的对比
http://blog.youkuaiyun.com/fw0124/article/details/6672522 别人理解如下:如果我们把每个线程理解成 一个个门,门都需要上锁,在没有ReentrantLock之前,我们上锁,可能统一用sycnchronized(钥匙),大家都在竞争锁钥匙,钥匙只有一把,谁先拥有谁就先开门进去,门打不开的就一直卡死等待,浪费时间,还不能干其他...原创 2015-11-10 18:22:36 · 121 阅读 · 0 评论 -
Java中Date和String转换
String—>Date方法一: String dateString = "2012-12-06 "; try { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd "); Date date = sdf.parse(dateString); } catch (Par...原创 2015-11-23 14:41:16 · 96 阅读 · 0 评论 -
代码质量----PMD、FindBug、checkstyle、sonar这些代码检查工具的区别
可以说都是代码静态分析工具,但侧重点不同。 pmd:基于源代码分析,主要面向安全编码规则,如“避免声明同名变量”,包括风格类、类型使用等等,具备一定的数据流分析和路径分析能力。 checkstyle:基于源代码,与pmd类似,但更侧重编码的语法风格,分析深度不及pmd。 findbugs:基于字节码分析,大量使用数据流分析技术,侧重运行时错误检测,如空指针引用等,分析深度...原创 2015-12-02 18:08:34 · 1696 阅读 · 0 评论 -
Socket 和 http 的区别
Socket 和 http 的区别 HTTP 超文本传输协议,首先它是一个协议,并且是基于TCP/IP协议基础之上的应用层协议。TCP/IP协议是传输层协议,主要解决数据如何在网络中传输,HTTP是应用层协议,主要解决如何包装数据。HTTP协议详细规定了浏览器与服务器之间相互通信的规则,是万维网交换信息的基础。HTTP是基于请求-响应形式并且是短连接,并且是...原创 2017-02-20 11:34:19 · 141 阅读 · 0 评论