Java基础面试题及答案(16-20)

16、Java中的四种访问修饰符分别是什么?它们的作用是什么?
答:Java中的四种访问修饰符分别是public、protected、default、private。它们的作用是:

  • public:可以被任何类访问。
  • protected:可以被同一包内的类和不同包中的子类访问。
  • default:也称为包访问权限,在同一包内可以被访问,不同包中不能被访问。
  • private:只能被本类访问,其他类无法访问。

17、Java中的多态是什么?如何实现多态?
答:Java中的多态是指同一种操作作用于不同的对象上面,可以产生不同的结果。实现多态的方式有两种:

  • 继承:通过继承来实现多态,即通过子类继承父类并重写父类的方法,可以根据不同的子类对象来实现多态。
  • 接口:通过实现接口来实现多态,即通过实现不同的接口来实现多态。

18、Java中的String类是可变的吗?
答:Java中的String类是不可变的,即一旦创建了一个String对象,它的内容就不能被改变。如果要改变字符串的内容,需要创建一个新的字符串对象。

19、Java中的抽象类和接口有什么区别?
答:Java中的抽象类和接口都是用来实现抽象类的,但它们之间有一些区别:

  • 抽象类可以有构造方法,接口不能有构造方法。
  • 抽象类可以有非抽象方法,接口只能有抽象方法。
  • 一个类只能继承一个抽象类,但可以实现多个接口。

20、Java中的static关键字有什么作用?
答:Java中的static关键字可以用来修饰成员变量和成员方法,它的作用是:

  • static修饰的成员变量称为静态变量或类变量,可以被类的所有对象共享,只有一份内存,且在类加载时初始化,不需要创建对象即可访问。
  • static修饰的成员方法称为静态方法,可以通过类名直接调用,不需要创建对象即可访问。静态方法只能访问静态变量和其他静态方法,不能访问非静态变量和非静态方法。