201509-01 10个实用的但偏执的Java编程技术 在沉浸于编码一段时间以后(比如说我已经投入近20年左右的时间在程序上了),你会渐渐对这些东西习以为常。因为,你知道的……任何事情有可能出错,没错,的确如此。这就是为什么我们要采用“防御性编程”,即一些偏执习惯的原因。下面是我个人认为的10个最有用但偏执的Java编程技术。一起来看一看吧:1.将String字符串放在最前面为了防止偶发性的NullPointerException 异常,我们通常将String放置在... 继续阅读 >
201508-19 10个经典的 Java main 方法面试题 以下是笔者认为比较经典的关于Javamain方法的面试题,与其说是Java面试题,其实也是Java的一些最基础知识问题,分享给大家,如有错误,请指出。1.不用main方法如何定义一个类?不行,没有main方法我们不能运行Java类。在Java7之前,你可以通过使用静态初始化运行Java类。但是,从Java7开始就行不通了。2.main()方法需要的参数不是字符串数组?不是的,main()方法的参数必须是字符串数组。... 继续阅读 >
201508-09 Java:面向未来的七大强力新特性 诞生于1991年的Java如今已经成为世界范围内应用最为广泛的编程语言之一。在今天的文章中,我们将共同了解Java所拥有的七大关键新特性,展望其如何在未来的超级计算、大数据以及物联网等领域继续发挥核心作用。Java。作为与万维网共同发展成长的编程工具,几乎没有任何一种其它语言能够像它这样从始至终对Web应用程序作出定义。自1991年诞生于SunMicrosystems公司(现已被甲骨文公司收购)以来,由JamesGosling、Mike... 继续阅读 >
201507-30 Java:过去、未来的互联网编程之王 Java对你而言是什么?一门你大学里学过的语言?一个IT行业的通用语言?你相信Java已经为下一次互联网爆炸做好了准备么?Java一方面为嵌入式计算做了增强,而另一方面为实时应用做了精简,本文将介绍为什么Java是IoT(物联网)开发的最佳语言。为嵌入式计算增强、为实时系统精简——为什么 Java 是最适合 IoT 的语言自1969年至今,我们可以看到网络设备爆炸式的增长:从最初四个... 继续阅读 >
201507-17 即将改变软件开发的5个Java9新特性 预计发布的Java9中,最令人兴奋的特性是什么?有关Java9的消息最近显得有些沉寂,不要被它迷惑了。JDK开发者正在努力朝着下一个版本迈进,计划2015年12月前完成所有功能开发。之后,它会经历严格测试和bug修复以准备它的全面上市,按计划会在2016年9月发布。今天我们已经对Java9中所期待的特性有了一个很清晰的图景。如果Java8可以被描述为主要是lambdas表达式、streams和API变化的话,那么Java9就是关于Jigsaw... 继续阅读 >
201507-08 Java集合的小抄 Java初学者必备 在尽可能短的篇幅里,将所有集合与并发集合的特征,实现方式,性能捋一遍。适合所有"精通Java"其实还不那么自信的人阅读。ListArrayList以数组实现。节约空间,但数组有容量限制。超出限制时会增加50%容量,用System.arraycopy()复制到新的数组,因此最好能给出数组大小的预估值。默认第一次插入元素时创建大小为10的数组。按数组下标访问元素--get(i)/set(i,e)的性能很高,这是数组的基本优势。直接... 继续阅读 >
201507-01 在什么情况下,Java比C++慢很多? 问:在什么情况下,Java比C++慢很多?答:BenMaurer:为了回答这个问题,需要先将该问题分成几个可能引起慢的原因:垃圾回收器。这是一把“双刃剑”。如果你的程序遵循“大部分对象都在年青代中消亡”模型,垃圾回收器是非常有利的(很少的碎片,更好的缓存局部性)。但是,如果程序不遵循该模型,JVM将花费很多资源来回收堆内存。大对象。在Java中,所有的对象都有一个vtable指... 继续阅读 >
201506-25 Java程序员转Android开发必读经验分享 小编最近几日偷偷的发现部分Java程序员想转安卓开发,故此加紧补充知识,为大家搜集资料,积极整理前人的经验,希望可以给正处于困惑中的你,带来些许的帮助。啰哩啰嗦的说说Java和Android程序的区别:Android是主流智能手机的操作系统,Java是一种开发语言,两者没有好坏优劣之分,只是两种职业岗位的选择。学安卓从事移动互联方向开发,学Java从事软件、网站开发。而安卓上的应用大多是Java编写的,所以建议在安... 继续阅读 >
201506-19 聊聊企业级 Java 应用最重要的4个性能指标 1.商业事务商业事务是真实用户体验的直观反映:它们抓取了用户与应用交互时,用户体验到的实时性能数据。测量商业事务的性能,需要抓取一件商业事务整体的响应时间及其各个组件的响应时间。这些响应时间再与满足业务需求的基准进行比较,从而决定应用是否正常。如果你只打算测量应用的一个方面,本文会推荐你测量商业事务的表现。尽管容量指标(containermetrics)能帮助你决定何时调节集群规模,但是商业事务才决定... 继续阅读 >
201506-17 关于 Java 对象序列化您不知道的 5 件事 Java对象序列化(JavaObjectSerialization)在Java编程中是如此基本,以致很容易让人想当然。但是,和Java平台的很多方面一样,只要肯深入挖掘,序列化总能给予回报。在这篇文章中,TedNeward给出5个需重新审视Java对象序列化的理由,并提供重构、加密和验证序列化数据的技巧(和代码)。数年前,当和一个软件团队一起用Java语言编写一个应用程序时,我体会到比一般程序员多知道一点关于Java对象序列化... 继续阅读 >
201505-27 Java中的反射机制 android培训、java培训、期待与您交流!---------- java的反射机制是java的特性之一,反射机制是构建框架技术的基础所在,使用反射可以使程序更加灵活,避免将程序写死在代码里。相对于很多初学者只接触过java基础的人,反射还是一个很朦胧难懂的概念,下面我们就来说一下反射的一些应用。 java反射机制是指在运行状态中,动态获取信息以及动态调用对象方法的功能。java反射有3... 继续阅读 >
201505-22 java 左移和右移 今天搜到一个比较好用的在线编译器,希望和大家分享。除了java还有c++....,地址是http://www.tutorialspoint.com/compile_java_online.php 另外今天再次复习了java左移和右移,这里针对负数举个例子:正数和负数在java中是以补码的形式表示例如-2在计算机中表示为11111111111111111111111111111110 1.左移-2<<2即-2左移2位的结果是:11111111111111111111111111111000(低... 继续阅读 >
201505-22 Java内存模型的历史变迁 本文通过介绍Java的新/旧内存模型,来展示Java技术的历史变迁。旧的Java内存模型Java使用的是共享内存的并发模型,在线程之间共享变量。Java语言定义了线程模型规范,通过内存模型控制线程与变量的交互,从而实现Java线程之间的通信。在JDK5之前,Java一直使用的是旧内存模型。如图1所示。变量保存在由所有线程共享的主内存中,主内存中的变量称为mastingcopy。每个线程都有一个工作内存,它保存变量的workingcopy... 继续阅读 >
201505-05 高级Java程序员值得拥有的10本书 Java是时下最流行的编程语言之一。市面上也出现了适合初学者的大量书籍。但是对于那些在Java编程上淫浸多时的开发人员而言,这些书的内容未免显得过于简单和冗余了。那些适合初学者的书籍看着真想打瞌睡,有木有。想找高级点的Java书籍吧,又不知道哪些适合自己。别急,雪中送炭的来了:下面我将分享的书单绝对值得拥有。ps,我也尽力避免列出为特定软件或框架或认证的Java书,因为我觉得那不是纯Java书。1.《Java... 继续阅读 >
201504-12 Java程序员必备的6款最佳开发工具 工欲善其事,必先利其器。每一个Java程序员都有其惯用的工具组件。对于Java程序员,各种有用的软件和工具泛滥成灾。初级开发人员要么找不到合适的工具,要么在寻找过程中浪费了大量的时间。下面,我将为大家介绍6款Java开发必备工具。1.Notepad++Notepad++是编辑XML、脚本,甚至做简单笔记的最佳工具。关于这个工具最棒的一点是,你在Notepad++打开过的每个文件,即使你关闭之后,它仍然存在。所以它能减... 继续阅读 >