咨询热线 13305008725

Java面试题有哪些?成都java培训

发布时间:2018-07-13 17:05:51

  Java面试题有哪些?成都java培训。在我国,信息化高速发展的同时,IT人才缺口也逐渐增加,就统计,java工程师的人才缺口达到60%左右。而随着java行业的热,社会上大学生、年轻人甚至部分中年人开始学习java,因此企业对java人才的把关,开始运用习题、考试的方式去验证java工程师的专业性,那Java面试题有哪些呢?

  Q:访问修饰符public,private,protected,以及不写(默认)时的区别?

  A:

  修饰符当前类同 包子 类其他包

  public√√√√

  protected√√√×

  default√√××

  private√×××

  Q:Java有没有goto?

  A:goto

是Java中的保留字,在目前版本的Java中没有使用。goto和const,但是这两个是目前无法使用的关键字,因此有些地方将其称之为保留字,其实保留字这个词应该有更广泛的意义,因为熟悉C语言的程序员都知道,在系统类库中使用过的有特殊意义的单词或单词的组合都被视为保留字。

  Q:&和&&的区别?

  A:&运算符有两种用法:(1)按位与;(2)逻辑与。&&运算符是短路与运算。逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端的布尔值都是true整个表达式的值才是true。&&之所以称为短路运算是因为,如果&&左边的表达式的值是false,右边的表达式会被直接短路掉,不会进行运算。很多时候我们可能都需要用&&而不是&,例如在验证用户登录时判定用户名不是null而且不是空字符串,应当写为:username

!= null

&&!username.equals(“”),二者的顺序不能交换,更不能用&运算符,因为第一个条件如果不成立,根本不能进行字符串的equals比较,否则会产生NullPointerException异常。注意:逻辑或运算符(|)和短路或运算符(||)的差别也是如此。

  Q:Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?

  A:Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四舍五入的原理是在参数上加0.5然后进行下取整。

  Q:构造器(constructor)是否可被重写(override)?

  A:构造器不能被继承,因此不能被重写,但可以被重载。

  Q:两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?

  A:不对,如果两个对象x和y满足x.equals(y) == true,它们的哈希码(hash

code)应当相同。Java对于eqauls方法和hashCode方法是这样规定的:(1)如果两个对象相同(equals方法返回true),那么它们的hashCode值一定要相同;(2)如果两个对象的hashCode相同,它们并不一定相同。当然,你未必要按照要求去做,但是如果你违背了上述原则就会发现在使用容器时,相同的对象可以出现在Set集合中,同时增加新元素的效率会大大下降(对于使用哈希存储的系统,如果哈希码频繁的冲突将会造成存取性能急剧下降)。

  Q:是否可以继承String类?

  A:String 类是final类,不可以被继承。

  Q:char 型变量中能不能存贮一个中文汉字,为什么?

  A:char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。

  Q:抽象类(abstract class)和接口(interface)有什么异同?

  A:抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的成员可以是private、默认、protected、public的,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。

  Q:阐述静态变量和实例变量的区别。

  A:答:静态变量是被static修饰符修饰的变量,也称为类变量,它属于类,不属于类的任何一个对象,一个类不管创建多少个对象,静态变量在内存中有且仅有一个拷贝;实例变量必须依存于某一实例,需要先创建对象然后通过对象才能访问到它。静态变量可以实现让多个对象共享内存。

  Q:如何实现对象克隆?

  A:答:有两种方式:

  1、……

  更多详情:点击访问,观看java面试题大全

  睿峰教育--成都java培训机构,致力于提供最好的java培训服务

  Java面试题有哪些?成都java培训。在我国,信息化高速发展的同时,IT人才缺口也逐渐增加,就统计,java工程师的人才缺口达到60%左右。而随着java行业的热,社会上大学生、年轻人甚至部分中年人开始学习java,因此企业对java人才的把关,开始运用习题、考试的方式去验证java工程师的专业性,那Java面试题有哪些呢?

  Q:访问修饰符public,private,protected,以及不写(默认)时的区别?

  A:

  修饰符当前类同 包子 类其他包

  public√√√√

  protected√√√×

  default√√××

  private√×××

  Q:Java有没有goto?

  A:goto

是Java中的保留字,在目前版本的Java中没有使用。goto和const,但是这两个是目前无法使用的关键字,因此有些地方将其称之为保留字,其实保留字这个词应该有更广泛的意义,因为熟悉C语言的程序员都知道,在系统类库中使用过的有特殊意义的单词或单词的组合都被视为保留字。

  Q:&和&&的区别?

  A:&运算符有两种用法:(1)按位与;(2)逻辑与。&&运算符是短路与运算。逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端的布尔值都是true整个表达式的值才是true。&&之所以称为短路运算是因为,如果&&左边的表达式的值是false,右边的表达式会被直接短路掉,不会进行运算。很多时候我们可能都需要用&&而不是&,例如在验证用户登录时判定用户名不是null而且不是空字符串,应当写为:username

!= null

&&!username.equals(“”),二者的顺序不能交换,更不能用&运算符,因为第一个条件如果不成立,根本不能进行字符串的equals比较,否则会产生NullPointerException异常。注意:逻辑或运算符(|)和短路或运算符(||)的差别也是如此。

  Q:Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?

  A:Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四舍五入的原理是在参数上加0.5然后进行下取整。

  Q:构造器(constructor)是否可被重写(override)?

  A:构造器不能被继承,因此不能被重写,但可以被重载。

  Q:两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?

  A:不对,如果两个对象x和y满足x.equals(y) == true,它们的哈希码(hash

code)应当相同。Java对于eqauls方法和hashCode方法是这样规定的:(1)如果两个对象相同(equals方法返回true),那么它们的hashCode值一定要相同;(2)如果两个对象的hashCode相同,它们并不一定相同。当然,你未必要按照要求去做,但是如果你违背了上述原则就会发现在使用容器时,相同的对象可以出现在Set集合中,同时增加新元素的效率会大大下降(对于使用哈希存储的系统,如果哈希码频繁的冲突将会造成存取性能急剧下降)。

  Q:是否可以继承String类?

  A:String 类是final类,不可以被继承。

  Q:char 型变量中能不能存贮一个中文汉字,为什么?

  A:char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。

  Q:抽象类(abstract class)和接口(interface)有什么异同?

  A:抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的成员可以是private、默认、protected、public的,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。

  Q:阐述静态变量和实例变量的区别。

  A:答:静态变量是被static修饰符修饰的变量,也称为类变量,它属于类,不属于类的任何一个对象,一个类不管创建多少个对象,静态变量在内存中有且仅有一个拷贝;实例变量必须依存于某一实例,需要先创建对象然后通过对象才能访问到它。静态变量可以实现让多个对象共享内存。

  Q:如何实现对象克隆?

  A:答:有两种方式:

  1、……

  更多详情:点击访问,观看java面试题大全

  睿峰教育--成都java培训机构,致力于提供最好的java培训服务

  请联系网站客服,了解详细的优惠课程信息~

  优质、便捷、省心