![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
梵依然
这个作者很懒,什么都没留下…
展开
-
用StringBuilder(StringBuffer)#append替代字符串”+”会带来性能提升吗
经常看到一些论坛在谈java代码优化的时候讲到要将字符串连接操作”+”换成StringBuilder(或StringBuffer,后面为简单起见,只说StringBuilder)的append操作以提升性能,那么字符串连接使用StringBuilder#append来替代”+”真的会带来性能提升吗? 不忙回答,先看几个例子,代码如下: public c原创 2014-04-15 22:45:51 · 1889 阅读 · 0 评论 -
java中到底有没有指针
学过c/c++,然后学java的人往往心中有此纠结,java中到底有没有指针? 如果一定要在是或否里选择一个,OK,java中没有指针。 那么,java中的引用(reference)和c/c++中的指针(如无特别说明,后文指针均指c/c++中的指针)究竟有着什么样纠葛不清的关系呢? 在开始之前先说一下c/c++的引用,它跟java的引用完全不是一个东西,c/c++的引用是同一块内存的原创 2014-04-15 22:55:22 · 19060 阅读 · 0 评论 -
非原子的double和long
为实现Java内存模型,对非volatile的long或double值的一次写操作是被当做两次独立地写操作来处理的:每次写一半——32位。这会导致一种情况,一个线程看到一个写操作写入的前32位,另一个写操作写入的后32位。 对volatile的long和double值的读与写总是原子的。 对引用的读与写总是原子的,不管它们是用32位还是64位实现的。 一些实现可以方便地将64位l原创 2014-04-15 22:52:06 · 914 阅读 · 0 评论 -
如果构造方法中包含super(…)或this(…)调用,那么它们只能作为该构造方法的第一条语句,也就是说连try…catch都不可以有
如果构造方法中包含super(…)或this(…)调用,那么它们只能作为该构造方法的第一条语句,也就是说连try…catch都不可以有转载 2014-04-17 11:15:45 · 3533 阅读 · 0 评论 -
if里加入内容让其打印出Hello,World
题如下:一个类HelloWorld,如下: public class HelloWorld { public static void main(String... a) { if(你的代码) { System.out.print("Hello转载 2014-04-17 23:21:47 · 1301 阅读 · 0 评论 -
堆与栈
栈(操作系统):由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈 栈使用的是一级缓存, 他们通常都是被调用时处于存储空间中,调用完毕立即释放 堆(操作系统): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。 堆则是存放在二级缓存中,生命周期由虚拟机的垃圾回收算法来决定(并不是一旦成为孤儿对象就能被转载 2014-04-17 23:33:12 · 655 阅读 · 0 评论 -
Difference between new Test() and new Test() { }
Test t2=new Test(); will create the object of Test class. But Test t2=new Test(){ }; will create a object of subclass of test (i.e. anonymous inner class in this case). you can provide imple转载 2014-04-17 23:31:22 · 674 阅读 · 0 评论 -
java NIO
Java NIO和IO的主要区别 下表总结了Java NIO和IO之间的主要差别,我会更详细地描述表中每部分的差异。 IO NIO 面向流 面向缓冲 阻塞IO 非阻塞IO 无 选择器 面向流与面向缓冲 Java NIO和IO之间第一个最大的区别是,IO是面向流的,NI转载 2014-05-06 23:16:57 · 494 阅读 · 0 评论