十一、谈谈final,finally,finalize的区别?

1.final:是修饰符,是一个关键字。修饰变量,如果是基本类型表示该变量的值不能修改;如果是引用类型表示该变量不能指向别的对象;修饰类,表示该类不能被继承;修饰方法,表示该方法不能被重写。

2. finally:是在try-catch-finally块中配套使用。一般用于资源清理工作:流的关闭,以及数据库的关闭等。

3. finalize:是Object的方法,是GC运行机制的一部分。没有特别要求的话,一般不需要我们调用该方法,交给GC自己管理就好。Java中允许使用 finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作,但其具体执行时间点是无法确定的。子类可以覆盖finalize()方法以整理系统资源或者执行其他清理工作。

十二、error和exception有什么区别?

相同点:Error类和Exception类都继承Throwable类。

不同点

1.Error表示系统级错误和或低层资源的错误。是java运行环境中的内部错误或者硬件问题,比如,内存资源不足等。这种问题不可能指望通过程序能处理。

2.Exception表示需要捕捉或者需要程序进行处理的异常,它是由于程序设计有问题而产生的,可以通过程序来解决。包括编译时异常(必须捕获)和运行时异常(可以不捕获)。

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

是值传递。Java编程语言中只有值传递没有引用传递的说法。当一个对象实例作为一个参数被传递到方法中时,这个参数的值就是该对象的引用(该对象的地址)。对象的内容可以在被调用的方法中改变,但对象的引用即地址是永远不会改变的。

十四、作用域public,private,protected,以及不写时的区别

对于这个题,只要看懂这个图就没问题了。

作用域 当前类 同包 不同包子孙类 其他包
public       √           √              √              √
protected  √           √              √               ×
friendly    √            √              ×              ×
private     √            ×              ×              ×
不写时默认为friendly

十五、33.String 和StringBuffer有什么差别?在什么情况下使用它们?

区别

1.String是字符串常量,一旦创建就不能修改,每次对String操作都是产生一个新的字符串对象;

2.StringBuffer和StringBuilder是字符串可变量,可以修改,操作的始终是原对象。但是StringBuffer是线程安全的(效率低),StringBuilder是线程不安全的(效率高)。

选择:如果很少修改,使用String,毕竟它最简单;
           如果经常修改,且是单线程,使用StringBuilder(最常用);
           如果经常修改,且是多线程,使用StringBuffer。

最新文章

  1. MUI(4)
  2. MFC关闭子窗口 如何把父窗口也一起关闭
  3. Web框架之Tornado
  4. jsnop
  5. POJ - 2965 - The Pilots Brothers' refrigerator (高效贪心!!)
  6. BigInteger构造函数解析
  7. Java NIO中核心组成和IO区别
  8. hdoj 1251 统计难题(字典树)
  9. LEK-Introduction-Installation-Usage-new
  10. 开始使用ansible
  11. 201521123034《Java程序设计》第4周学习总结
  12. ASP.NET Core中间件实现分布式 Session
  13. Effective Java 第三版——16.在公共类中使用访问方法而不是公共属性
  14. 小强的HTML5移动开发之路(1)——HTML介绍
  15. 2019.03.09 bzoj4491: 我也不知道题目名字是什么(线段树)
  16. spring boot 2.0.3+spring cloud (Finchley)1、搭建服务注册和发现组件Eureka 以及构建高可用Eureka Server集群
  17. python 测试文件或者文件目录是否存在 测试文件类型,获取文件大小,获取修改日期
  18. modal结合art-template
  19. 区别ES3ES5和ES6this的指向问题。区分普通函数和箭头函数中this的指向问题
  20. Linux-系统负载

热门文章

  1. 1.语言概述-JavaScript权威指南笔记
  2. JavaBean组件在JSP文档中的应用
  3. HDU 3729 二分匹配 反向匹配
  4. C#读取网页
  5. php ajax提交数据 在本地可以执行,而在服务器不能执行
  6. 在raw_input()中使用中文提示,在CMD下中文乱码问题解决。。。
  7. 8,SSO,,eager copy,COW
  8. 基于Visual C++2013拆解世界五百强面试题--题8-数组的排序和查找
  9. File类常用方法
  10. 【示例代码】HTML+JS 画图板源码分享