小光

no pain no gain

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
抽象类与接口的区别 语法层面: 1 抽象类可以有自己的数据成员(默认是friendly的,在继承类中可以修改)也可以由非abstract的成员方法。继承类实现所有抽象方法,或者继承抽象方法自己也成为抽象类。 接口中则只能有静态不能被修改的成员(public static final)且必须给予初值和abstract方法(单不必标注abstract)。继承接口的类必须实现所有抽象方法。 2 抽象类不支持多重继承 接口支持多重继承 3 在抽象类中可以为方法赋予默认行为 接口中方法不能拥有默认行为(在修改时可能会有麻烦,需要改变所有实现类) 设计层面: 1 抽象类表示的是“is a”关系,而接口表示的是“like a”关系。
posted on 2012-04-05 14:55  Michael_chen  阅读(113)  评论(0编辑  收藏  举报