总结一些Java试题

1.方法重载和重写的区别:

重载是在同一个类中,同名不同参

重写是在不同类中,同名同参

2.抽象类的特点:

抽象方法和抽象类都要被关键词abstract修饰

抽象方法一定在抽象类中

抽象类不能new对象

抽象类中的抽象方法要被使用,必须由子类复写所有抽象方法后,建立子类对象的调用。

3.接口的特点:

接口不可以实例化,可结合多态进行使用(接口 对象 = new 对象)

接口里的成员属性全部是以public,static,final修饰符修饰

接口里的成员方法全部以public,abstract修饰符修饰

接口里不能含有普通方法

子类继承接口必须实现接口里的所有成员方法,除非子类也是抽象类

4.Iterator是什么:

Iterator接口提供遍历任何Collection的接口,我们可以从一个Collection中使用迭代器方法来获取迭代器实例。

5.如何将字符串转换成时间Date:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

Date date = sdf.parse("2019-12-21");

6.字符串对象String,StringBuilder,StringBuffer之间的区别:

String是不可变的,其他两个是可变的,也就是可以自由增加或者删除字符串。StringBuilder和StringBuffer,前者是线程不安全的,后者是线程安全的。理论上StringBuilder效率更高。字符串大量拼接时,建议使用StringBuilder,StringBuffer.

7.什么是java序列化,如何实现java序列化

序列化是一种用来处理对象流的机制,所谓对象流 也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可以将流化后的对象传输于网络之间。

序列化的实现:将需要被序列化的类实现serializable接口,该接口没有需要实现的方法,implements serializable只是为了标注该对象是可以被序列化的,然后使用一个输出流来构造一个ObjectOutputStream对象,接着,使用ObjectOutputStream对象的writeObject(Objectobj)方法就可以将参数为obj的对象写出,要恢复的话 则用输入流。

8.什么能被序列化,什么不能被序列化:

能被序列化的:

属性

类名

不能被序列化的:

static属性

方法

加了transient修饰符的属性

原文地址:https://www.cnblogs.com/daiwenxiang/p/12077484.html