zoukankan      html  css  js  c++  java
  • 论抽象类和接口

    大话设计模式-面向对象基础 读后感


    老生常谈的话题了,但每一次复习都有新的收获。温故而知新


           论抽象类
      
    比如猫继承动物类
    我们实例对象抽象成类。比如猫对象抽象成猫类。
    如果把一个动物的实体抽象成类,就没有很大的具体意义。 动物实体是什么..


    所以我们考虑把实例化没有意义的父类,改成抽象类。


    抽象类注意点:
    1 抽象类不能实例化(貌似实例化了也没有多大的意义,要是有意义也不会变成抽象类了)
    2 抽象方法必须被子类重写的方法
    3 如果类中包含抽象方法,那么类必须定义为抽象类


      PS:考虑让抽象类拥有尽可能多的共用代码,拥有尽可能少的数据。
         抽象类通常代表一个抽象概念,它提供一个继承的出发点,当设计一个新的抽象类时,一定是用来继承的,所以,在一个继承关系形成的等级结构里面,树叶节点应当是具体类,而树枝节点应当是抽象类。
     


     
    论接口

    接口就是把隐士公共方法和属性结合起来,以封装特定功能的一个集合。一旦类实现了接口,类就可以支持接口所指定的所有属性和成员。


    接口注意点:
    1 接口不能实例化,不能有构造方法和字段
    2 不能有修饰符,如public,private
    3 实现接口的类必须实现接口中所有的方法和属性


    PS: 接口的命名,前面要加一个大写字母‘ I ’
         抽象类---相似的对象
    接口--    感觉无关的对象,但有相师的特行,如飞机,鸟,超人  都会飞
     
     
    1:   类是对象的抽象;抽象类是对象的抽象;接口是行为的抽象.如果只关注行为抽象,那么可以认为接口就是抽象类。
          无论是接口,抽象类,或者对象,都是在不同的层次,不同的角度进行抽象的结果


    2: 如果行为跨越不同类的对象,可使用接口;对于一些相似的类对象,用继承抽象类

  • 相关阅读:
    samtools获取uniq reads
    NSDate的比较
    UIViewAlertForUnsatisfiableConstraints布局问题
    如何将网页保存为pdf
    使用Carthage管理iOS依赖库
    输出格式
    解决问题思路
    重:将好用的控件,上次github,
    解决CocoaPods慢的小技巧
    swift开发笔记28 CoreML
  • 原文地址:https://www.cnblogs.com/fangyuandoit/p/13713864.html
Copyright © 2011-2022 走看看