关于抽象类和接口的总结

关于抽象类和接口的总结
区别1:抽象类体现继承关系,一个类只能単继承。接口体现实现关系,一个类可以多实现。
区别2:抽象类中可以定义非抽象方法和抽象方法,子类继承后可以直接使用非抽象方法。接口的方法都是抽象的,必须由子类去实现。接口中的成员都有固定的修饰符。
区别3:抽象类有构造方法,用于给子类对象初始化。而接口没有构造方法。
特点1:抽象类不可以实例化,即不能用new创建对象。抽象类必须由其子类 覆盖了所有的抽象方法后, 该子类才可以实例化,否则,这个子类也               是抽象类。
特点2:抽象类abstract关键字不能和哪些关键字共存:
  •        final 因为final修饰的方法不能被继承。
  •        static因为类.方法(),此方法没有方法体,没有意义。
  •        private 因为抽象方法是要被子类覆盖的,加上private子类就不知道这个方法了。
特点3:接口中声明变量必须是final、public 、static的,接口中定义的方法都是abstract、 public的。接口里的数据成员必须初始化,且全是常量,             不是变量。
特点4:接口是抽象类的  变体( 你没看错  ), 接口也可以通过关键字extends来继承其他接口。格式如下所示:
            class 类名称 implements 接口A,接口B{   //接口的实现}
            interface 子接口名称 extends 父接口1,父接口2,...{}

猜你喜欢

转载自blog.csdn.net/m0_37284598/article/details/80365838
今日推荐