抽象类与接口

抽象类:

          1:抽象类不一定带有抽象方法,它也可以带有普通方法,但是带有抽象方法的类一定是抽象类,

          2:抽象类是不能被实例化的,例如普通可以通过  类名  对象名 = new  类名();用new对象来实例化类,但是抽象类                   办法去实现这种情况。它可以通过父类类型指向子类对象来使用,

          3:抽象方法和普通方法相比,抽象方法没有方法体,

          4:如果子类没有实现父类的所有抽象方法,那么子类也必须是抽象类,

          5:抽象类里没有抽象构造方法,也没有抽象静态方法。

          6:抽象类里可以有非抽象的构造方法,在创建子类实例时可以调用。

           public abstract class Hkil {
public Hkil(){                  //父类的无参构造,
System.out.println("父类");
}
public static void main(String[] args) {
Hkil Hk = new Mkil();
}
          }
        class Mkil extends Hkil{
         public Mkil(){                 //子类的无参构造,
        System.out.println("子类");
         }

        }

        运行结果为  父类 子类   此时结论为当子类执行无参构造时会把父类的无参构造先走一遍。


接口

 1:关键字interface(接口)  implements(实现接口)在实现多个接口时使用逗号隔开

 2:接口里所有的成员方法必须是公开的抽象的,(public abstract)所有的成员变量必须是静态常量(public  static final)

 3:接口比抽象类更抽象,所有和抽象类一样不能被实例化,只能作为类型使用。

 4:实现类必须实现接口的所有方法。

 5:实现类可以实现多个接口,类似于多继承。

   

 6:接口里有且只能有方法和成员变量两种,不能含有其他的。且成员变量必须显示初始化。接口里可以只有成员变量,也可以只有成员方法,

 7:接口里不能有构造方法。不能被实例化,

 8:接口不能实现接口,但是可以继承多个其他接口,继承多个接口的接口叫复合接口。

 9:一个普通类必须实现接口的抽象方法,除非这个类是抽象类,可以不实现接口的抽象方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值