博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面向对象二次整理(基础,属性引用,方法引用.绑定方法)
阅读量:7084 次
发布时间:2019-06-28

本文共 2035 字,大约阅读时间需要 6 分钟。

概念之类的去百度一下...

基础

属性    实例变量    类变量(默认共享)    私有属性(__var)方法    构造方法    析构方法或析构函数    私有方法

对象: 实例化一个类之后得到的对象

封装

把一些功能的实现细节不对外暴露

类的初始化(__init__): 就是给对象定义一些自己的特征,不能有返回值

继承

代码的重用单继承多继承    2.7的经典类-->深度优先,新式类-->广度优先    3.x 均是广度优先    class Foo()

多态

接口重用,一种接口,多种实现

高级属性:

静态方法    与类无关,不能访问类里的任何属性和方法类方法    只能访问类变量属性@property    把一个方法变成一个静态属性反射    getattr(obj,str)    setattr(obj,str,val)    hasattr(obj,str)

属性引用

ff对象特征:    name = 'ff'    sex = famale    school = 'qh'    技能:    def talk(self):        print('很炫')    def run(self):        print('is running')        jm对象特征:    name = 'jm'    sex = male    school = 'qh'技能:    def talk(self):        print('is talking')    def run(self):        print('is running')        总结类(学 python 的人)class study_person:共同的特征    school = 'qh'共同的技能    def talk(self):        print('is talking')    def run(self):        print('is running')
class Sutdent:    school = 'qh'  #数据属性 也就是类的变量,类下面的方法的共同的属性    def __init__(self,name,sex):  #函数属性    self.name = name    self.sex = sex    def talk(self):    print('is talking')def walk(self):    print('is running')ff = Study_person('ff','famale')mm = Study_person('mm','male')...例子太多,先不写了

类的用法:

  1. 实例化产生对象

ff = Student('ff','famale')

jm = Student('jm','male')

  1. 属性引用

数据属性

print(类名.__dict__) 

print(Student.school)

#属性修改

Student.school = 'bd'

#增

Student.xx = '666'

#删

del Student.xx

函数属性

print(Student.talk)

print(Student.walk)

对象的用法

对象本身并没有函数属性,只存放了对象自己特有的特征,它的特征在类里 (school)

class Sutdent:    school = 'qh'  #数据属性    def __init__(self,name,sex):  #函数属性    self.name = name    self.sex = sex    def talk(self):    print('is talking')def walk(self):    print('is running')ff = Student('ff','famale')jm = Student('jm','male')

print(ff.name)

print(ff.sex)

print(ff.school,id(ff.school))

print(jm.school,id(jm.school))

print(Student.school,id(Student.school))

如果school在类的外部, 则无法访问.

产生一个类会有一个类的__dict__,产生一个对象会有一个对象的__dict___(实例化一个类后得到的对象),共有特征去类里找.

绑定方法 #特性: 自动传值

ff.walk() #ff.walk(ff) #Student.walk(ff) 把调用者当做第一个参数传给walk #会自动传值

转载于:https://www.cnblogs.com/ugfly/p/7468331.html

你可能感兴趣的文章
玩转无线电 -- 温哥华天车 RFID 票务系统
查看>>
innobackupex全量备份和增量备份脚本
查看>>
Entity Framework 4-从模型创建数据库
查看>>
【AI科幻】地球陨落 · 全新世界
查看>>
Vue.js 2.0 学习重点记录
查看>>
批处理大全
查看>>
面对对象的三大特征
查看>>
JAVA入门[14]-Spring MVC AOP
查看>>
bootstrap35-按钮嵌套
查看>>
Oracle常用的性能诊断语句
查看>>
2017世界交通运输大会在京开幕
查看>>
Linux日志卷空间不足造成Samba无法登陆
查看>>
local dns
查看>>
VR资本寒冬,终究是个伪命题
查看>>
如何使用HackRF做一个简单的IMSI捕获器
查看>>
HDU 献给杭电五十周年校庆的礼物
查看>>
InnoDB索引概述,二分查找法,平衡二叉树
查看>>
yum锁定强行解锁
查看>>
CentOS6上Hadoop集群中服务器cpu sys态异常的定位与解决
查看>>
「镁客·请讲」虚之实康成:等风来不如先发制人,打磨好硬件产品才是王道...
查看>>