加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 运营中心 > 交互 > 正文

40道Java基础常见面试题及详细答案

发布时间:2021-01-01 11:43:40 所属栏目:交互 来源:网络整理
导读:副标题#e# 最近看到网上流传着各种面试经验及面试题,往往都是一大堆技术题目贴上去,但是没有答案。 为此我业余时间整理了40道Java基础常见的面试题及详细答案,望各路大牛发现不对的地方不吝赐教,留言即可。 八种基本数据类型的大小,以及他们的封装类

这其实也是非常接近当前社会分工细化的现实,也是统分利用现有资源达到并发效果的一种很经济的手段,而不是动不动就来个并行处理,虽然那样是最简单的,但也是最浪费资源的方式。

什么是Java的反射呢?

Java 反射是可以让我们在运行时,通过一个类的Class对象来获取它获取类的方法、属性、父类、接口等类的内部信息的机制。

这种动态获取信息以及动态调用对象的方法的功能称为JAVA的反射。

反射的作用?

反射就是:在任意一个方法里:

1.如果我知道一个类的名称/或者它的一个实例对象, 我就能把这个类的所有方法和变量的信息找出来(方法名,变量名,方法,修饰符,类型,方法参数等等所有信息)

2.如果我还明确知道这个类里某个变量的名称,我还能得到这个变量当前的值。

3.当然,如果我明确知道这个类里的某个方法名+参数个数类型,我还能通过传递参数来运行那个类里的那个方法。

反射机制主要提供了以下功能:

  • 在运行时判断任意一个对象所属的类。
  • 在运行时构造任意一个类的对象。
  • 在运行时判断任意一个类所具有的成员变量和方法。
  • 在运行时调用任意一个对象的方法。
  • 生成动态代理。

反射的原理?

JAVA语言编译之后会生成一个.class文件,反射就是通过字节码文件找到某一个类、类中的方法以及属性等。

反射的实现API有哪些?

反射的实现主要借助以下四个类:

反射的实例

能否转为List

不可以强转类型的

这个问题涉及到了,范型向上转型 和 范型向下转型问题。 List向上转换至List(等价于List)会丢失String类的身份(String类型的特有接口)。 当需要由List向下转型时,你的程序必须明确的知道将对象转换成何种具体类型,不然这将是不安全的操作。

如果要强转类型,Json 序列化转型

 str = ();
List obj= JSONObject.parseArray(JSONObject.toJSONString(str));

或者遍历,或者克隆,但是取出来就是(Object)了,需要强转,String 因为类型丢了。

Android中三种常用解析XML的方式(DOM、SAX、PULL)简介及区别。

http://blog.csdn.net/cangchen/article/details/44034799

xml解析的两种基本方式:DOM和SAX的区别是?

dom一次性把xml文件全部加载到内存中简历一个结构一摸一样的树, 效率低。 SAX解析器的优点是解析速度快,占用内存少,效率高。

DOM在内存中以树形结构存放,因此检索和更新效率会更高。但是对于特别大的文档,解析和加载整个文档将会很耗资源。

DOM,它是生成一个树,有了树以后你搜索、查找都可以做。?SAX,它是基于流的,就是解析器从头到尾解析一遍xml文件,解析完了以后你不过想再查找重新解析。 sax解析器核心是事件处理机制。例如解析器发现一个标记的开始标记时,将所发现的数据会封装为一个标记开始事件,并把这个报告给事件处理器。

平时工作中,xml解析你是使用什么?

1.5

  1. 自动装箱与拆箱
  2. 枚举(常用来设计单例模式)
  3. 静态导入
  4. 可变参数
  5. 内省

1.6

  1. Web服务元数据
  2. 脚本语言支持
  3. JTable的排序和过滤
  4. 更简单,更强大的JAX-WS
  5. 轻量级Http Server
  6. 嵌入式数据库 Derby

1.7

  1. switch中可以使用字串了
  2. 运用List tempList = new ArrayList<>(); 即泛型实例化类型自动推断
  3. 语法上支持集合,而不一定是数组
  4. 新增一些取环境信息的工具方法
  5. Boolean类型反转,空指针安全,参与位运算
  6. 两个char间的equals
  7. 安全的加减乘除
  8. map集合支持并发请求,且可以写成 Map map = {name:"xxx",age:18};

1.8

  1. 允许在接口中有默认方法实现
  2. Lambda表达式
  3. 函数式接口
  4. 方法和构造函数引用
  5. Lambda的范围
  6. 内置函数式接口
  7. Streams
  8. Parallel Streams
  9. Map
  10. 时间日期API
  11. Annotations

1.9

  1. Jigsaw 项目;模块化源码
  2. 简化进程API
  3. 轻量级 JSON API
  4. 钱和货币的API
  5. 改善锁争用机制
  6. 代码分段缓存
  7. 智能Java编译,第二阶段
  8. HTTP 2.0客户端
  9. Kulla计划: Java的REPL实现

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!