Java语言面试题二十一
龚超 2018-05-14 来源 : 阅读 723 评论 0

摘要:Java语言频道整理一些各大公司常用的面试笔试题,供大家在每天闲暇之余学习其中几道题目,日积月累,等到出去面试时,一切都水到渠成,在Java语言的面试时就自然会游刃有余了。

Java面试题二十一

1,volatile关键字是否能保证线程安全?()

 

答案:否

        volatile关键字用在多线程同步中,可保证读取的可见性,JVM只是保证从主内存加载到线程工作内存的值是最新的读取值,而非cache中。但多个线程对volatile的写操作,无法保证线程安全。

        假如线程1,线程2 在进行read,load 操作中,发现主内存中count的值都是5,那么都会加载这个最新的值,在线程1对count进行修改之后,会write到主内存中,主内存中的count变量就会变为6;线程2由于已经进行read,load操作,在进行运算之后,也会更新主内存count的变量值为6;导致两个线程及时volatile关键字修改之后,还是会存在并发的情况。

 

2,下面哪个流类属于面向字符的输入流(  )

A、BufferedWriter           

B、FileInputStream          

C、ObjectInputStream          

D、InputStreamReader

 

答案:D

        Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式。
        面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和OutputStream的子类。
        面向字符的操作为以字符为单位对数据进行操作,在读的时候将二进制数据转为字符,在写的时候将字符转为二进制数据,这些类都是Reader和Writer的子类。

 

3,Java能不能不通过构造函数创建对象()

A、能     B、不能

 

答案:A

        Java创建对象的几种方式:

        (1) 用new语句创建对象,这是最常见的创建对象的方法。
        (2) 运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。
        (3) 调用对象的clone()方法。
        (4) 运用反序列化手段,调用java.io.ObjectInputStream对象的 readObject()方法。

        (1)和(2)都会明确的显式的调用构造函数 ;(3)是在内存上对已有对象的影印,所以不会调用构造函数 ;(4)是从文件中还原类的对象,也不会调用构造函数。

 

4,下列哪个叙述是正确的()
A.子类继承父类的构造方法。 
B.abstract类的子类必须是非abstract类。 
C.子类继承的方法只能操作子类继承和隐藏的成员变量。 
D.子类重写或新增的方法也能直接操作被子类隐藏的成员变量。

 

答案:C

        子类是不继承父类的构造方法的,而是必须调用其父类的构造方法。 
abstract类的子类可以是abstract类,如果是非abstract类,就必须重写父类中所有的abstract方法。 
D中子类新增的方法是不能直接操作被子类隐藏的成员变量的。

 

5,下列哪个叙述是正确的()
A.final类可以有子类。 
B.abstract类中只可以有abstract方法。 
C.abstract类中可以有非abstract方法,但该方法不可以用final修饰。 
D.不可以同时用final和abstract修饰同一个方法。 
E.允许使用static修饰abstract方法。

 

答案:D

        用final修饰的类是不允许被继承的,A错误 
        abstract类中也可以有普通成员方法,B错误 
        abstract类中的非abstract方法是可以用final修饰的,而abstract方法是不可以被final修饰的,C错误 
        D同上,正确
        不允许使用static修饰abstract方法,E错误。

 

6,当检索一个压缩文件时,首先要建立压缩文件输入流对象,该对象()

  A、以选中的压缩文件为参数

  B、以FileInputStream对象为参数

  C、以InputStreamReader对象为参数

  D、以BufferedReader对象为参数

 

答案:B

  在java.io包中提供了对压缩文件进行操作的能力。它是通过压缩文件输入流与压缩文件输出流来实现的,其分别继承自InflaterInputStream与DeflaterOutputStream。

       在创建压缩文件输入流时,其初始化参数是一个FileInputStream类的实例。

 

7,已知一个有序线性表为()(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为90的元素时,查找成功的比较次数为( )

A,1         B,2       C,3       D,9

 

答案:B

        根据二分法查找需要两次:首先将90与表中间的元素50进行比较,由于90大于50,所以在线性表的后半部分查找;第二次比较的元素是后半部分的中间元素,即90,这时两者相等,即查找成功。

 

8,Java程序的并发机制是( )

A.多线程

B.多接口

C.多平台

D.多态性

 

答案:A

        Java是通过多线程实现并发机制的。多线程是指一个程序中包含多个执行流, 多线程程序设计的含义是可以将程序任务分成几个并行的子任务。

 

9,下列选项中,不属于模块间耦合的是( )
A.数据耦合
B.标记耦合
C.异构耦合
D.公共耦合


答案:C
        模块之间的耦合程度反映了模块的独立性,也反映了系统分解后的复杂程度。 按照耦合程度从弱到强,可以将其分成7级。

        分别是非直接耦合、数据耦合、标记耦合、控制 耦合、外部耦合、公共耦合和内容耦合。其中没有异构耦合这种方式。

 

10,下列关于内部类的说法不正确的是  (  )
A,内部类的类名只能在定义它的类或程序段中或在表达式内部匿名使用
B,内部类可以使用它所在类的静态成员变量和实例成员变量
C,内部类不可以用abstract修饰符定义为抽象类
D,内部类可作为其他类的成员,而且可访问它所在类的成员

 

答案:C

        内部类不仅可以用abstract修饰定义为抽象类,也可以用private或protected定义,所以选项C说法错误。

 

如有问题请加微信号:Iotek666,本微信号会不定期推送技术相关优质文章、热点资讯、视频资源及生活趣事,也很乐意与您一起交流IT知识,让我们在闲暇之余巩固一下自己的知识体系 ,扩充一下自己的知识面。快利用琐碎时间给自己充电吧!

希望这篇文章可以帮助到你,总之同学们,IT资讯尽在职坐标。

本文由 @职坐标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论
本文作者 联系TA

擅长针对企业软件开发的产品设计及开发的细节与流程设计课程内容。座右铭:大道至简!

  • 370
    文章
  • 23112
    人气
  • 87%
    受欢迎度

已有23人表明态度,87%喜欢该老师!

进入TA的空间
求职秘籍 直通车
  • 索取资料 索取资料 索取资料
  • 答疑解惑 答疑解惑 答疑解惑
  • 技术交流 技术交流 技术交流
  • 职业测评 职业测评 职业测评
  • 面试技巧 面试技巧 面试技巧
  • 高薪秘笈 高薪秘笈 高薪秘笈
TA的其他文章 更多>>
WEB前端必须会的基本知识题目
经验技巧 93% 的用户喜欢
Java语言中四种遍历List的方法总结(推荐)
经验技巧 91% 的用户喜欢
Java语言之SHA-256加密的两种实现方法详解
经验技巧 75% 的用户喜欢
java语言实现把两个有序数组合并到一个数组的实例
经验技巧 75% 的用户喜欢
通过Java语言代码来创建view的方法
经验技巧 80% 的用户喜欢
其他海同师资 更多>>
吕益平
吕益平 联系TA
熟悉企业软件开发的产品设计及开发
孔庆琦
孔庆琦 联系TA
对MVC模式和三层架构有深入的研究
周鸣君
周鸣君 联系TA
擅长Hadoop/Spark大数据技术
范佺菁
范佺菁 联系TA
擅长Java语言,只有合理的安排和管理时间你才能做得更多,行得更远!
金延鑫
金延鑫 联系TA
擅长与学生或家长及时有效沟通
经验技巧30天热搜词 更多>>

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程