概述
##1. 请论述java的内存回收机制。
Java的内存回收机制是Java虚拟机提供的能力,用于在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间。
需要注意的是:内存回收回收的是无任何引用的对象占据的内存空间而不是对象本身。
##2. 什么是封装的定义以及封装好处有哪些?
####封装:
把彼此相关数据和操作包围起来,抽象成为一个对象,变量和函数有了归属,想要访问对象的数据只能通过已定义的接口。
####封装的好处:
(1)隐藏实现细节。好比你买了台电视机,你只需要怎么使用,并不用了解其实现原理。
(2)安全性。比如你在程序中私有化了age属性,并提供了对外的get和set方法,当外界使用set方法为属性设值的时候 你可以在set方法里面做个if判断,把值设值在0-80岁,那样他就不能随意赋值了。
(3)增加代码的复用性。好比在工具类中封装的各种方法,你可以在任意地方重复调用,而不用再每处都去实现其细节。
(4)模块化。封装分为属性封装,方法封装,类封装,插件封装,模块封装,系统封装等等。有利于程序的协助分工,互不干扰,方便了模块之间的相互组合与分解,也有利于代码的调试和维护。
##3什么是抽象的定义以及抽象的好处?
####抽象的概念:
通过特定的实例抽取出共同的特征以后形成的概念的过程,它强调主要特征和忽略次要特征。
####抽象的好处:
用于发现abstract的优点,抽象的原则可以让编程变得很有趣;有利于代码的维护和重用。
##4. 什么是面向对象?什么是面向过程?
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
##5. 什么是异常?简述java的异常处理机制。
####异常:
Java中程序运行时的一些错误。
####Java的异常处理机制:
1). try(执行可能发生异常的代码) catch(捕获异常) finally(无论是否发生异常代码总能执行)
2). 声明抛出异常:throws
3). 手动抛出异常:throw
4).自定义异常
5).extends Exception或者他的子类
##6. Throw/throws有什么联系和区别?
####联系:
都是向上抛出异常。
####区别:
1)throw 是语句抛出一个异常;throws 是方法抛出一个异常;
2)throw要么和try-catch-finally语句配套使用,要么与throws配套使用。但throws可以单独使用,然后再由处理异常的方法捕获。
##7. 简述程序、进程和线程之间的关系?什么是多线程程序?
程序:一段静态的代码,它是应用软件执行的蓝本(运行时就相当于一个进程。静态的实体)
进程:进程就是系统分配资源调用的一个独立单位。是程序的一次动态执行,从加载到执行到执行完毕是一个完整的过程,并且有自己的生命周期。(动态的实体)
线程:线程依赖于进程存在,一个线程相当于进程的某个任务。
多线程程序:一个程序运行时(进程)产生了不止一个线程,执行的路径有多条,就叫多线程。
最后
以上就是虚拟朋友为你收集整理的JAVA复习题简答题的全部内容,希望文章能够帮你解决JAVA复习题简答题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复