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

     1 ------------- 1,抽象类---------------------------
     2 1,抽象类
     3 抽象方法:----只有方法,没有实现
     4 例如:
     5 func1() 和 func2() 即是抽象方法,func3则不是
     6 
     7 class ClassName(object):
     8     def func1(self, arg):
     9         pass
    10     def func2(self, arg):
    11         pass
    12     def func3 (self,arg):
    13         print "xxx"
    14         
    15 class ClassName(metaclass=abc.ABCMeta):
    16     # @abc.abstractmethod   ## 没有此句话,则是可以实例化的
    17     def func1(self):
    18         pass
    19     def func3(self):
    20         print("xxxx")
    21 
    22 p=ClassName()
    23 p.func3()
    24 
    25 
    26 
    27 抽象类:拥有一个或者多个抽象方法的类(但是也可以有其它具体的方法)
    28 说明:
    29     抽象类不可以实例化
    30 
    31 import abc
    32 
    33 class ClassName(metaclass=abc.ABCMeta): ## 必段要有此句
    34     @abc.abstractmethod   ## 必须要有此句,则是不可以实例化
    35     def func1(self):
    36         pass
    37     def func3(self):
    38         print("xxxx")
    39 
    40 p=ClassName()  ## 报错,不可以实例化
    41 p.func3()
    42 
    43 
    44 -----------2 ,接口-------------------------------
    45 2,接口:
    46     抽象类中所有的方法都是抽象方法,
    47     则叫做接口。
    48 
    49 class ClassName(metaclass=abc.ABCMeta): ## 必段要有此句
    50     @abc.abstractmethod   ## 必须要有此句,则是不可以实例化
    51     def func1(self):
    52         pass
    53     def func3(self):
    54         pass
    55 
    56 ------------3,类中的内建函数--------------------------------------
    57 
    58 issubclass  # 是否是子类
    59 isinstance  # 是否是实例
    60 dir  ## 查看都有哪些属性
    61 super ## 父类
    62 vars  ## 查看都有哪些属性
    63 
    64 -----------------------------------------
  • 相关阅读:
    采用NAND Flash启动时出现Kernel panic not syncing: No init found错误
    ubuntu 11.10 安装小企鹅fcitx输入法
    UBoot中设定的bootdelay参数不起作用
    python 数据类型
    python运算符
    python符号//、%和/运算
    pytho 基本数据类型
    Python 开篇
    mmsplayer v2 java 之(mmsPlayer 播放类)
    mmsplayer v2 java 之(mmsTrack 音频类)
  • 原文地址:https://www.cnblogs.com/2mei/p/9254179.html
Copyright © 2011-2022 走看看