当前位置: 首页 > news >正文

Java 习题6 参考答案及解析_java期末复习题答案及解析

1.下列哪一个是正确的()。

A.Java程序经编译后会产生machine code     B.Java程序经编译后会产生DLL

C.Java程序经编译后会产生byte code        D.以上都不正确

解析:Java程序执行机制是:

源程序(*.java文件)-->Java编译器-->字节码(*.class文件) -->JVM-->操作系统。

所以选C,值得注意的是运行JVM字节码的工作是由解释器来完成的,整个运行过程是:代码的装入、校验和执行。

2.以下哪个关键字可以用来为对象加互斥锁?(   )

A.transient         B.static               C.serialize         D.synchronized

解析:synchronized主要用于标识临界区使之成为一种逻辑上的原子操作,以达到线程间的互斥,

所以选D。

3.下面有关方法覆盖说法正确的是:(    )

A.方法覆盖要求覆盖和被覆盖的方法不能有相同的名字,参数列以及返回值

B.方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限

C.被覆盖的方法不能比覆盖的方法抛出更多的异常

D.覆盖的方法一定不能是private的

解析:子类重写的方法不能比父类中被重写的方法拥有更严格的访问权限。

所以选D。

4. throws 关键字和 throw 关键字有什么区别和联系?

答案:throw用来在方法体内抛出异常,而throws用来在方法声明处声明异常。这两个关键字有着一定的联系。如果一个方法中使用了throw关键字抛出了异常,那么要么立即用try/catch语句进行捕获, 要么就是用throws进行声明,否则将出现编译错误。然而, 并不是  只有使用了throw关键字之后才能使用throws关键字,语法上来说,任何一个方法都可以直接使用throws关键字,抽象方法也可以使用。

5.什么是多态?如何实现多态?

答案:多态性(Polymorphism)是指在基类中定义的属性或方法被派生类继承后,可以具有不同的数据类型,或表现出不同的行为,从而使得同一个属性或方法在基类及其各个派生类中具有不同的语义。Java的多态性体现在两个方面:(1) 方法重载实现的静态多态性,又  称为编译时多态;(2) 方法覆盖/重写实现的动态多态性,又称为运行时多态。

6.静态变量和实例变量的区别?

答案:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。

相关文章:

  • 猜字小游戏java方法体_java实现猜字小游戏
  • java游戏开发包_LWJGL
  • java的人patch方法_java – 如何在CXF中使用PATCH方法
  • java func_Java通过匿名类来实现回调函数实例总结
  • Java关系表达式x y_Java正则逻辑运算符[X|Y]匹配
  • java将五元换成1元5角_C,一个代码来获得一笔钱转换成四分之一,硬币,镍币,便士[关闭]...
  • java 对方 GBK 乱码_【转】Java编码与乱码---GBK与UTF-8之间的转换
  • mySQL表变量和临时表的区别_SQL Server表变量和临时表的区别
  • 将java类的包注册到map中_java hashmap对象当实参是出现”java:11: 错误: 无法将类 Role中的构造器 Role应用到给定类型;”?...
  • JAVA不是主方法怎么输出_java主方法如何调用非静态方法
  • php显示缩小的图片代码,php等比例缩放图片及剪切图片代码分享
  • php代码转换工具,推荐几款格式化工具以及代码转换工具
  • img标签 中的php图片大小,html中关于img标签以及改变图片尺寸的详解(图)
  • php csv 源码 下载,[PHP] 使用php生成下载csv文件
  • java 去掉 u00a0,UTF-8编码中的特殊空格之C2 A0 - NO-BREAK SPACE
  • 【css3】浏览器内核及其兼容性
  • 【刷算法】从上往下打印二叉树
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • Docker 笔记(2):Dockerfile
  • echarts的各种常用效果展示
  • github指令
  • Phpstorm怎样批量删除空行?
  • Promise面试题2实现异步串行执行
  • spring + angular 实现导出excel
  • vue-cli在webpack的配置文件探究
  • 关于List、List?、ListObject的区别
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 回顾 Swift 多平台移植进度 #2
  • 简单实现一个textarea自适应高度
  • 解决iview多表头动态更改列元素发生的错误
  • 前端_面试
  • 悄悄地说一个bug
  • 系统认识JavaScript正则表达式
  • - 转 Ext2.0 form使用实例
  • 阿里云ACE认证之理解CDN技术
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • (4)Elastix图像配准:3D图像
  • (搬运以学习)flask 上下文的实现
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (过滤器)Filter和(监听器)listener
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (一)Java算法:二分查找
  • (一)VirtualBox安装增强功能
  • (一)WLAN定义和基本架构转
  • .NET 6 在已知拓扑路径的情况下使用 Dijkstra,A*算法搜索最短路径
  • .NET Core 成都线下面基会拉开序幕
  • .NET Core 中插件式开发实现
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET 设计一套高性能的弱事件机制
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • .net对接阿里云CSB服务