接口(interface)与抽象类(abstract class)的区别,正确的是?

Java

  1. A.一个类可实现多个接口,但只能继承一个抽象类
  2. B.抽象类不能声明构造方法,只能被子类继承后使用
  3. C.接口可以声明实例字段并在实现类中直接继承使用,抽象类反而不能声明字段
  4. D.二者完全等价,只是关键字不同,可以在任意位置互换使用