java笔试面试详解2

  1. 当一个对象被当作参数传递到一个方法,此方法可改变这个对象的属性,
    并可返回变化后的结果,那么这里到底是值传递还是引用传递?

    是值传递。java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的属性可以在被调用过程中被改变,但是对象的引用是永远不会改变的。

  2. String 和 StringBuilder. StringBuffer 的区别?
    java 平台提供两种类型的字符串: String 和StringBuffer/StringBuilder,他们可以储存和操作字符串。 其中String 是只读字符,也就意味着String 引用的字符内容是不可以改变的。StringBuilder 和StringBuffer 的可以被修改的。StringBuilder 是JDK1.5 中引入的,它和StringBuffer 的方法完全相同。 区别在于 StringBuilder的效率比StringBuffer 的效率高。相对 StringBuffer 比StingBuilder 的安全性高

  3. List. Set. Map 是否继承自 Collection 接口
    ist、Set 是,Map 不是。Map是键值对映射容器,与List和Set有明显的区别,而Set存储的零散的元素且不允许有重复元素(数学中的集合也是如此),List是线性结构的容器,适用于按数值索引访问元素的情形。

  4. List、Map、Set三个接口存取元素时,各有什么特点
    List以特定索引来存取元素,可以有重复元素。Set不能存放重复元素(用
    对象的equals()方法来区分元素是否重复)。Map保存键值对(key-value pair)映射,映射关系可以是一对一或多对一

  5. 启动一个线程是调用Run() 还是start() 方法
    启动线程调用的是start() 方法,使线程所代表的虚拟处理机处于可运行状态,这就意味它可以由JVM 调度执行,这并不意味着线程会立即执行。run() 方法是线程启动后要进行回掉
    callback 的方法

6.获取一个类的对象有哪些方式?
方法1:类型.class, 例如:String.class
方法2:类型.getClass, 例如: “hello”.getClass()
方法3:Class.forName(),例如:Class.forName(“java.lang.String”)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值