刚从华为公司面试出来的被问到的10道题拿出来分享

1.char型变量中能不能存储一个中文汉字 为什么?

char类型可以存储一个中文汉字 因为Java中使用的编码是Unicode(不选择任何特定的编码 之间使用字符在字符集中的编号 这是统一的唯一方法)一个char类型占2个字节(16比特)所以放一个中文是没问题的

2.抽象类 abstract class 和接口 interface有什么异同?

抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法 而接口中不能定义构造器而且其中的方法全部都是抽象方法 抽象类中的成员可以是 private 默认 protected public的而接口中的成员全部都是public的,抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量,有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。

3.Java中会存在内存泄漏吗?请简单描述

理论上Java因为有垃圾回收机制GC 不会存在内存泄漏问题 这也是Java被广泛适用于服务器编程的一个重要原因;然而在实际开发中,可能会存在无用但可达的对象,这些对象不能被GC回收,因此也会导致内存泄漏的发生,例如Hibernate的Sssion(一级缓存)中的对象属于持久态,垃圾回收器是不会回收这些对象的,然而这些对象中可能存在无用的垃圾对象,如果不及时关闭close或清空flush 一级缓存就可能导致内存泄露

4.抽象的方法是否可同时是静态的 是否可同时是本地方法 是否可同时被synchronized修饰

都不能抽象方法需要子类重写 而静态的方法是无法被重写的 因此二者是矛盾的 本地

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值