Java面试题及答案解析

Java面试题及答案解析

ID:42402195

大小:325.62 KB

页数:18页

时间:2019-09-14

Java面试题及答案解析_第1页
Java面试题及答案解析_第2页
Java面试题及答案解析_第3页
Java面试题及答案解析_第4页
Java面试题及答案解析_第5页
资源描述:

《Java面试题及答案解析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、面向对象编程(OOP)Java是一个支持并发、基于类和而向对象的计算机编程语言。下而列出了而向对象软件开发的优点:►代码开发模块化,更易维护和修改。►代码复用。►增强代码的可靠性和灵活性。►增加代码的可理解性。面向对象编程有很多匝要的特性,比如:封装,继承,多态和抽象。下面的章节我们会逐个分析这些特性。封装封装给对彖捉供了隐藏内部特性和行为的能力。对象提供一些能彼其他对彖访问的方法来改变它内部的数据。在Java当中,有3种修饰符:public,private和protected。每一种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限。下面列出了使用封装的一些

2、好处:►通过隐藏对彖的属性来保护对象内部的状态。►捉高了代码的可用性和可维护性,因为对象的行为可以彼单独的改变或者是扩展。►禁止对象之间的不良交互捉高模块化。参考这个文档获取更多关于封装的细节和示例。多态多态是编程语言给不同的底层数据类型做和同的接口展示的一种能力。一个多态类型上的操作可以应用到其他类型的值上面。继承继承给对彖捉供了从基类获取字段和方法的能力。继承捉供了代码的重用行,也可以在不修改类的情况下给现存的类添加新待性。抽象抽象是把想法从具体的实例中分离出來的步骤,因此,要根据他们的功能而不是实现细节來创建类。Java支持创建只暴漁接I」而不包含方法实现的抽象的类。

3、这种抽象技术的主要目的是把类的行为和实现细节分离开。抽象和封装的不同点抽象和封装是互补的概念。一方面,抽象关注对象的行为。另一方面,封装关注对象行为的细节。一般是通过隐藏对象内部状态信息做到封装,因此,封装可以看成是用来提供抽象的一种策略。常见的Java问题1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独垂写或者是重新编译。Java虚拟机让这个变为可能,因为它

4、知道底层硬件平台的指令长度和其他特性。2.JDK和JRE的区别是什么?Java运行时环境(JRE)是将要执行Java程序的Java虚拟机。它同时也包含了执行applet需要的浏览器插件。Java开发工只包(JDK)是完整的Java软件开发包,包含了JRE,编译器和英他的工只(比如:JavaDoc,Java调试器),可以让开发者开发、编译、执行Java应用程序。1."static"关键字是什么慈思?Java中是否可以覆盖(override)-个private或者足static的方法?"static"关键字表明一个成员变最或者是成员方法可以在没有所属的类的实例变最的情况下被访问

5、。Java中static方法不能被覆盖,因为方法覆盖绘基于运行时动态绑定的,而static方法是编译时静态绑定的。static方法跟类的任何实例都不相关,所以概念上不适用。2.是否可以在static坏境中访问非static变晟?static变呈在Java是属于类的,它在所冇的实例中的值是一样的。当类彼Java虚拟机载入的时候,会对static变呈进行初始化。如果你的代码尝试不用实例来访问非static的变疑,编译器会报错,因为这些变疑还没有被创建出來,还没有跟任何实例关联上。5Java支持的数据类型冇哪些?什么是自动拆装箱?Java语言支持的8中基本数据类型是:•byte•

6、short•int•long•float•double•boolean•char自动装箱是Java编译器在基本数据类型和对应的对象包装类型Z间做的一个转化。比如:把int转化成Integer,double转化成double,等等。反之就是自动拆箱。6Java屮的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?Java中的方法重载发生在同一个类里而两个或者是多个方法的方法名相同但是参数不同的情况。与此相对,方法覆盖是说子类東新定义了父类的方法。方法覆盖必须冇相同的方法名,参数列表和返回类型。覆盖考可能不会限制它所覆盖的方法的访问。7Java'

7、

8、«,什么是构造函数?什么是构造函数重载?什么是复制构造函数?当新对象被创建的时候,构造函数会被调用。每一个类都有构造函数。在程序员没有给类提供构造函数的情况下,Java编译器会为这个类创建一个默认的构造函数。Java中构造濒数重载和方法重载很相似。可以为一个类创建多个构造函数。每一个构造函数必须有它自己唯一的参数列表。Java不支持像C++中那样的复制构造函数,这个不同点是因为如果你不自己写构造函数的惜况下,Java不会创建默认的复制构造函数。8Java支持幺继承么?不支持,Java不支持多继承。每个类都只能继承一

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。