黑马程序员技术交流社区

标题: Java基础面试题与答案2 [打印本页]

作者: hmCEO    时间: 2016-5-25 23:53
标题: Java基础面试题与答案2

21、如何实现字符串的分割?
   答:第一种方法是采用split()方法,将分割后的内容保存在指定的字符串数组中;第二种方法是采用StringTokenizer,利用StringTokenizer的nextToken()、hasMoreTokens()等方法进行分割。
22、描述一下JVM加载class文件的原理机制?
   答:JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件。它负责在运行时查找和装入类文件的类。
23、在什么情况下,finally语句不会执行?

   答:如果在try内部执行一条System.exit(0)语句终止应用程序的执行,则finally中的语句不会被执行。
24、作用域public,private,protected,以及不写时的区别。
   答:具体区别如下:

作用域
同一类
同一包
子孙类
所有类
public
  √  
protected
×
private
×
×
×
默认
×
×

25、说出重写和重载的区别,重写方法是否可以改变返回值的类型?
   答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写是父类与子类之间多态性的一种表现,重载是一个类中多态性的一种表现。
   如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写。子类的对象使用 这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载。
   重载的方法是可以改变返回值的类型。

26、throw和throws有什么区别?
   答:throw关键字一般用于方法内部,用于抛出一个异常类对象,一旦异常被抛出后,throw语句后的程序代码将不会被执行。
    throws关键字通常出现在方法声明中,用来指定该方法可能抛出的异常。如果可能有多个异常抛出,可以使用逗号将它们分隔开。

27、字符串的compareTo方法结果是什么?
   答:使用compareTo()方法可以比较字符串与字符串之间的大小关系。如果当前字符串小于指定字符串,则返回一个小于0的数值;否则返回一个大于0的数值;如果两个字符串相等,则返回0。
28、字符串的连接操作有几种实现方法?
   答:字符串与字符串的连接操作可以通过“+”运算符和concat()方法来实现。另外“+”运算符还可以实现字符串与其他类型数据之间的连接操作,可以与字符串连接的数据类型有:int、long、float、double、boolean、char等。
29、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
   答:是值传递,因为在Java编程语言中只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。
30、Class MyClass等价于 Class MyClass extends Object是否正确?
   答:正确。因为Object类是Java中最高层次的类,是所有类的超类。所有的类,都可以说是由Object继承而来,只是我们不需要显式地指明extends Object。



作者: 一架飞机CE3    时间: 2016-5-26 00:05
可以的 我表示道理都懂 就是说不出来 所以要多看多学习
作者: satana    时间: 2016-5-26 00:16
感谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2