易截截图软件、单文件、免安装、纯绿色、仅160KB

JAVA String类学习

  最近在找工作,基本都是java开发的方向,很多笔试、面试题都是围绕String类对象展开的,花样很多,但是万变不离其中,掌握了基本的原理,无论怎么变,实质都是一样的。下面总结一下关于String的基本知识点:
(一)String是final的
可能我们很多人遇到过这个问题final关键字有什么作用,其中一个回答就是final修饰类表示不可继承。大家有没有仔细想过为什么呢?我也曾花了一点时间google,网上的争论很多。有个解答很有意思:To computer languages or natural languages, I always prefer to ask what and how instead of why. Even though I know there are a lot of good and bad reasons behind them. The good ones make the language vital and successful, the bad ones make future improvement and replacement possible. Languages (natural and programming languages included) are not rigorous science, a lot of human factors are involved. To programming languages, another factor is the cost. This is a more philosophical and time-efficient decision of mine. You can make yours different than mine, of course.有些东西我们只需要知道是什么和如何做就可以了,至于为什么,在它后面可能暗藏深刻的哲学道理,超过了编程语言的本身,是语言创建者的一个思想的表达(或者是本身有bug,不得已而为之,呵呵)。
但是还是找到一些ms正确的原因:
第一,final修饰类表示不可被继承,final类的所有方法都是final的:这有两个好处:一是编译器会对final的方法进行内联的操作(Think in JAVA中表示这不是必须的)提高运行效率;二是防止恶意用户修改String类的某些方法,如length()
第二,让一个类无法继承,表明这个类没有什么可以改进或扩充的啦,可能开发者认为这个类已经足够了,不需要用户进行特别的改进
第三,无从证实,有解释说如果String类不是final,可能会导致恶意用户修改系统System的参数,如访问控制权限,它的所有方法都是可以改变的,会导致不安全。
和本文相关的我认为你得认识到final会导致对于String的操作产生什么现象,即任何对String的修改都会产生新的对象,但是如果修改后的对象和原来的对象一样,则直接返回原来的对象。
(二)如何构建String对象
1.首先String是个类,可以使用new直接创建:String s = new String("hello");
这里发生的一切和其他一切对象的生成一样
step


相关文档:

Java NIO API详解

 
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......

java与C++中文字符的问题

 
中文的编码常用的有3种格式:1)gb2312(就是ascii码方式,也说ansi) 2)unicode 3)utf-8
c++一般采用ancii码,而java一般采用unicode,而SymbianC++(以后简称symbian)采用unicode或utf-8
比如汉字“好”: unicode为“7D 59”,而ascii为“BA C3”, utf-8编码为3个字节。
终端你 ......

JAVA类文件版本(class version)与JDK对应关系

一个java的class文件是一个二进制文件,其中前四个字节是magic位,第五到第六个字节对应于minor和major,下面是这个类文件版本与JDK的对应关系。class文件的minor和major可以通过ultraedit来查看,或自己编程等。
major minor Java platform version
45 3 1.0
45 3 1.1
46 0 ......

转:深入理解java多态性

 看到这篇关于Java多态的帖子,觉得很多,基本涵盖了Java多态的各种场景,这里转给大家参考:
http://blog.csdn.net/thinkghoster/archive/2008/04/19/2307001.aspx
深入理解java多态性
        昨天看到一个关于多态性的帖子,参考了回帖者的理解,加入了一些自己的看法,整理 ......

Maven中修改java文件不重启立即生效

今天发现一个很NB的玩意,让我们在开发的时候修改Java文件,不用重启服务器立刻生效!支持Jetty tomcat jboss等很多服务器,它就是JRebel。 http://www.zeroturnaround.com/jrebel/installation/ 这里有针对不同服务器的安装方法,基本上主流的都涵盖了,绝大多数程序员都能使用!我们公司用maven/jetty对项目进行构建和开 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号