刚面试过的10道面试题拿出来给你们看看

1.swtich是否能作用在byte上,是否能作用的在long上,是否能作用在String上?

在Java5 以前,switch(expr)中, expr只能是byte short char int 从Java5开始 Java中引入了枚举类型 expr也可以是enum类型 从Java7开始 expr还可以是字符串String 但是长整型 long在目前所有的版本中都是不可以的。

2.用最有效率的方法计算2乘以8?

2<<3左移3位相当于乘以2的3次方 右移3位相当于除以2的3次方

3.数组有没有length()方法 String有没有length()方法?

数组没有length()方法 有length的属性 String有length()方法 。JavaScript中,获得字符串的长度是通过length属性得到的 这一点容易和Java混淆

4.构造器 constructor是否可以被重写(override)?

构造器不能被继承 因此不能被重写 但可以被重载

5.两个对象值相同 x.equals(y)==true 但却可有不同供电hash code这句话对不对?

不对 如果俩个对象x和y满足 x.equals(y)==true 他们的哈希吗 hash code 应当相同 。

6.是否可以继承String类

String类是final类 不可以被继承

继承String本身就是一个错误的行为 对String类型最好的重用方式是关联关系 Has-A 和依赖关系 Use-A 而不是继承关系 Is-A

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

值传递

8.String和StringBuilder StringBuffer的区别?

Java平台提供了两种类型的字符串 String和StringBuffer StringBuilder 他们可以存储和操作字符串 其中String是只读字符串 也就意味着String引用字符串内存是不能被改变的 而StringBuffer StringBuilder类表示的字符串对象可以直接进行修改 StringBuilder是Java 5引入的 它和StringBuffer的方法完全相同 区别在于 他是在单线程环境下使用的 因为他的所有方法都没有被synchronized修饰 因此它的效率也比StringBuffer要高

9.重载Overload和重写Override的区别 重载的方法能否根据返回类型进行区分?

方法的重载和重写都是实现多态的方式 区别在于前者实现的是编译时的多态性 后者实现的是运行时的多态性 重载发生在一个类中,同名的方法如果有不同的参数列表 参数类型不同 参数格式不同或者二者都不同 则视为重载 重写发生在子类与父类之间 重写要求 子类被重写方法与父类被重写方法有相同返回类型 比父类被重写方法更好访问 不能比父类被重写方法声明更多的异常 重载对返回类型没有特殊要求

面试题:华为面试题 曾经问过一个这样的问题 “为什么不能根据返回类型来区分重载” 快说出你的答案吧!

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值