python笔记11--面向对象
2015-04-01 14:51
246 查看
面向对象最重要的两个概念就是类(class)和实例(instance)
class Base(object):
def __init__(self,var1,var2...) #Base类的构造函数,self是Base类中所有内置方法的第一个参数,指向对象本身
self.var1=var1
self.var2=var2 #这里的变量可在类中进行全局调用,相当于一个初始化,var1,var2为接收到的参数
def func(self,..)
pass #func便属于该Base类的一个内置方法,可以使用__init__方法的变量(封装性的体现)
a=1 #该Base类的一个公有属性a
__b=1 #该Base类的一个私有属性__b
instance=类名(Var1,Var2) #是该Base类的一个实例
instance.func() #该实例可以调用类中的一切内置方法和属性
关于访问权限:python中如果变量以双下划线__开头,一般外部不能进行访问,此时变成私有变量
class Child(Base): #继承性,获得Base的所有属性和方法,比如也拥有func()的方法
def func(self):
pass #多态性,子类的方法覆盖了父类的方法,总是会运行子类的方法
获取对象信息:
使用type函数可判断对象的类型
使用isinstance函数可判断类型是否一致
使用dir函数可获取一个对象的所有方法和属性
类方法: 使用修饰器@classmethod来进行标识
class test():
@classmethod
def func(cls):
pass
t=test()
test.func() #
t.func() #正确,可以通过类和实例进行访问
静态方法:使用修饰器@staticmethod来进行标识
class test():
@staticmethod
def func(): #不需要进行参数的定义
pass
t=test()
test.func() # 正确,可以直接使用类来访问内置方法,不需要进行实例化
class Base(object):
def __init__(self,var1,var2...) #Base类的构造函数,self是Base类中所有内置方法的第一个参数,指向对象本身
self.var1=var1
self.var2=var2 #这里的变量可在类中进行全局调用,相当于一个初始化,var1,var2为接收到的参数
def func(self,..)
pass #func便属于该Base类的一个内置方法,可以使用__init__方法的变量(封装性的体现)
a=1 #该Base类的一个公有属性a
__b=1 #该Base类的一个私有属性__b
instance=类名(Var1,Var2) #是该Base类的一个实例
instance.func() #该实例可以调用类中的一切内置方法和属性
关于访问权限:python中如果变量以双下划线__开头,一般外部不能进行访问,此时变成私有变量
class Child(Base): #继承性,获得Base的所有属性和方法,比如也拥有func()的方法
def func(self):
pass #多态性,子类的方法覆盖了父类的方法,总是会运行子类的方法
获取对象信息:
使用type函数可判断对象的类型
使用isinstance函数可判断类型是否一致
使用dir函数可获取一个对象的所有方法和属性
类方法: 使用修饰器@classmethod来进行标识
class test():
@classmethod
def func(cls):
pass
t=test()
test.func() #
t.func() #正确,可以通过类和实例进行访问
静态方法:使用修饰器@staticmethod来进行标识
class test():
@staticmethod
def func(): #不需要进行参数的定义
pass
t=test()
test.func() # 正确,可以直接使用类来访问内置方法,不需要进行实例化
相关文章推荐
- 廖雪峰Python教程 学习笔记11 面向对象高级编程
- DAY6之Python学习笔记:面向对象术语整理
- 【Python】学习笔记九:面向对象拓展
- Python学习笔记:面向对象基础
- php面向对象笔记11 异常处理
- < 笔记 > Python - 08 Python 面向对象高级编程(OOP Advanced Features)
- python学习笔记六之初识面向对象上(基础篇)
- Python Requests-学习笔记(11)-请求与响应对象
- 廖雪峰python学习笔记8:面向对象初步
- python学习笔记六之面向对象相关下(基础篇)
- 【Python】学习笔记——-8.1、面向对象高级编程:1.使用__slots__
- 【Python】学习笔记——-8.2、面向对象高级编程:2.使用@property
- 廖雪峰python学习笔记9:面向对象高级
- python oop面向对象笔记
- 初学Python的学习笔记7----偏函数、模块、重点是面向对象
- python面向对象笔记
- python面向对象笔记
- Python笔记(2):多参数,全局变量与局部变量,层状作用域,函数式编程,面向对象
- 【学习笔记11】java面向对象-接口与类、接口与接口之间的关系
- python复习笔记[10] —— 面向对象程序设计