***,说说final、finally、finalize的区别。最终的?修饰符(关键字)如果一个类被声明为final,则意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既声明为abstract又声明为final。将变量或方法声明为final可确保它们在使用过程中不会被更改。声明为final的变量在声明的时候必须赋初值,并且只能读取,在以后的引用中不能修改。声明为final的方法也只能使用,不能重载。最后?提供一个finally块以在异常处理期间执行任何清理。如果抛出异常,则执行匹配的catch子句,并将控制传递到finally块(如果有)。敲定?方法名。Java技术允许在垃圾收集器从内存中清除对象之前使用finalize()方法进行必要的清理。当垃圾收集器确定该对象未被引用时,该方法将由该对象上的垃圾收集器调用。它定义在Object类中,因此所有类都继承自它。子类覆盖finalize()方法来组织系统资源或执行其他清理任务。finalize()方法在对象被垃圾收集器删除之前调用。二、HashMap和Hashtable的区别。都属于Map接口的类,实现了唯一键到具体值的映射。HashMap类没有排序也没有排序。它允许一个空键和多个空值。Hashtable类似于HashMap,但不允许空键和空值。它也比HashMap慢,因为它是同步的。三、Strings=newString("xyz");创建了多少个字符串对象?两个对象,一个是“xyx”,另一个是指向“xyx”的引用对象s。四、sleep()和wait()有什么区别?线程的sleep()方法是一种让线程停止一段时间的方法。线程不一定在睡眠间隔到期后立即恢复执行。这是因为在那一刻其他线程可能正在运行并且没有计划放弃执行,除非(a)“唤醒”线程具有更高的优先级。(b)正在运行的线程由于其他原因被阻塞。wait()是线程交互,如果线程对同步对象x发出wait()调用,线程会暂停执行,被调用的对象会进入等待状态,直到被唤醒或等待时间结束。五、短路s1=1;s1=s1+1;怎么了?短s1=1;s1+=1;怎么了?短s1=1;s1=s1+1;,s1+1是int类型,不能显式转换为short类型。可以修改为s1=(short)(s1+1)。短s1=1;s1+=1是正确的。六、Overload和Override的区别。重载方法可以改变返回值的类型吗?方法重写重写和重载重载是Java多态性的不同表现形式。重写Overriding是父类与子类之间多态的一种体现,重载Overloading是类中多态的一种体现。如果子类中定义的方法与其父类具有相同的名称和参数,我们说该方法被重写(Overriding)。当子类的对象使用该方法时,会调用子类中的定义,对它来说,父类中的定义被“屏蔽”了。如果在一个类中定义了多个同名方法,并且它们的参数个数或参数类型不同,则称为方法重载。重载方法可以改变返回值的类型。七、Set中的元素不能重复,那么用什么方法区分是否重复呢?它是==还是equals()?它们之间有什么区别?Set中的元素不能重复,所以使用iterator()方法来区分是否重复。equals()是判断两个Set是否相等。equals()和==方法判断引用值是否引用同一个对象。equals()在类中被重写以在两个单独对象的内容和类型匹配时返回true。八、错误和异常有什么区别?错误表示一个严重的问题,其中恢复并非不可能但很困难。例如,内存溢出。指望程序能够处理这样的情况是不可能的。exception表示设计或实现问题。也就是说,它代表了如果程序正确运行就永远不会发生的情况。第九,给我一个你最常看到的运行时异常。ArithmeticException,ArrayStoreException,BufferOverflowException,BufferUnderflowException,CannotRedoException,CannotUndoException,ClassCastException,CMMException,ConcurrentModificationException,DOMException,EmptyStackException,IllegalArgumentException,IllegalMonitorStateException,IllegalPathStateException,IllegalStateException,ImagingOpException,IndexOutOfBoundsException,MissingResourceException,NegativeArraySizeException,NoSuchElementException,NullPointerException,ProfileDataException,ProviderException,RasterFormatException,SecurityException,SystemException,UndeclaredThrowableException,UnmodifiableSetException,UnsupportedOperationException第十,Set中的元素不能重复,那么用什么方法区分重复呢?它是==还是equals()?它们之间有什么区别?Set中的元素不能重复,则使用iterator()方法区分是否重复。equals()是判断两个Set是否相等。equals()和==方法判断引用值是否引用同一个对象。equals()在类中被重写以在两个单独对象的内容和类型匹配时返回true。
