Java面试经历记录

本文回顾了Java开发中的面试常见问题,包括Zookeeper作为注册中心的双向绑定概念,StringBuilder和StringBuffer的区别,以及String对象在内存中的存储位置。讨论了在面试中遇到这些问题时的思考过程和答案要点。
摘要由CSDN通过智能技术生成

1zookeeper作为注册中心是双向绑定的吗?

当时没明白双向绑定什么意思,就介绍了下自己使用zookeeper作为注册中心的使用方式,包括注册和调用服务。面试官说这不就是双向绑定吗,先订阅,再通知调用。

2StringBuilder和StringBuffer有什么区别?

面试初级程序员的题目,可是我没答上来。好多年没看过这个问题了好不好,也不是天天用,谁记得呢。其实很简单,stringbuild是线程不安全的,stringbuffer是线程安全的。stringbuffer的append方法用了锁。这么简单的问题没答来一点办法也没有,有什么可解释的呢。

3String对象存在栈还是堆上?

what,对象不是都在堆里吗,但是既然问这个问题肯定有玄机啊。怎么答呢。在思考的时候问下一个问题了。后来查了下,string对象真有玄机。

String是一个特殊的包装类数据,可以用:

String str = new String("abc");

String str = "abc";

两种形式来创建,第一种是用new()来创建对象的,它会存放在堆中,每调用一次就会创建一个新的对象;而第二种是先在栈中创建一个对String类的对象引用变量str ,然后查找栈中有没有存放"abc",如果没有,则将"abc"存放进栈,并令str 指向"abc",如果已经有"abc",则直接令str 指向"abc"。

但是,不是特别研究过的谁会记得这个啊。就是看过了,也会忘,用的时候谁管他堆啊栈啊。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值