第一题:JDK有以下三种版本

J2SE,standard edition,标准版,是我们通常用的一个版本
J2EE,enterpsise edition,企业版,使用这种JDK开发J2EE应用程序
J2ME,micro edition,主要用于移动设备,嵌入式设备上的java应用程序

第二题:JDK、JRE和JVM的区别

jdk是用于开发的而jre是用于运行Java程序的
jdk和jre都包含了jvm,从而使得我们可以以运行java程序
jvm是java编程语言的核心并且具有平台独立性。

第三题:JDK1.8新特性

1.函数式接口
函数式接口(functional interface 也叫功能性接口),简单来说,函数式接口是只包含一个方法的接口。
2.Lambda语法
包含三个部分
1.一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数
2.一个箭头符号:->
3.方法体,可以是表达式和代码块

第四题:JDK常用的包

java.lang:这个是系统的基础类比如String、Math、Integer、System和Thread,提供常用功能。
java.io:这里面是所有输入输出有关的类,比如文件的操作等。
java.net:这里面是与网络有关的类。
java.util:这个是系统辅助类。
java.SQL:这个是数据库操作的类

第五题:面向对象编程的四个特征

面向对象编程的四个特征:抽象、封装、继承、多态

第六题:多态的四种提现形式

1.接口和接口的继承
2.类和类的继承
3.重载
4.重写

第七题:方法重写(Overriding)和方法重载(Overloading)的区别

方法重写:如果子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写。
方法重载:类中可以创建多个方法,他们具有相同的名字,但具有不同的参数。

第八题:&&和&的区别

&&具有短路功能,即如果第一个表达式为false时,则不再计算第二个表达式。
&:第一个表达式为false时,还要计算第二个表达式。还可以作为位运算符,表示按位与操作。

第九题:Integer和Int的区别

int是基本数据类型,Integer是引用数据类型。
int是java的原始数据类型,Integer是java为int提供的封装类。
int的变量是不需要实例化,Integer的变量需要实例化。
int的默认值为0,Integer的默认值为null。
int一般做数值参数,Integer一般做类型转换

第十题:解析xml文件的几种技术

第一种技术:Dom4j技术
第二种技术:SAX技术
第三种技术:JAXB技术