self 应用

1.为了更好的理解面向对象编程,下面以“烤地瓜”为案例,进行分析

2.分析“烤地瓜”的属性和方法

1.示例属性如下:

·cookedLevel :这是数字;0~3表示还是生的,超过3表示半生不熟,超过5表示已经烤好了,超过8表示已经烤成木炭了!我们的地瓜开始时时生的

·cookedString :这是字符串;描述地瓜的生熟程度

·condiments :这是地瓜的配料列表,比如番茄酱、芥末酱等

2.示例方法如下:

·cook():把地瓜烤一段时间

·addCondiments():给地瓜添加配料

·__init__():设置默认的属性

·__str__():让print的结果看起来更好一些

3.定义类,并且定义__init__()方法

#定义`地瓜`类

classSweetPotato:

'这是烤地瓜的类'

#定义初始化方法

def__init__(self):

self.cookedLevel =0

self.cookedString ="生的"

self.condiments = []

4.添加"烤地瓜"方法

5.完整代码

3.应用:存放家具

1.分析

2.代码


总结:如果一个对象与另外一个对象有一定的关系,那么一个对象可用是另外一个对象的属性

4.保护对象的属性

如果有一个对象,当需要对其进行修改属性时,有2种方法

·对象名.属性名=数据---->直接修改

·对象名.方法名() ---->间接修改

为了更好的保存属性安全,即不能随意修改,一般的处理方式为

·将属性定义为私有属性

·添加一个可以调用的方法,供调用

运行结果:

总结

·Python中没有像C++中public和private这些关键字来区别公有属性和私有属性

·它是以属性命名方式来区分,如果在属性名前面加了2个下划线'__',则表明该属性是私有属性,否则为公有属性(方法也是一样,方法名前面加了2个下划线的话表示该方法是私有的,否则为公有的)。

�5.__del__()方法

创建对象后,python解释器默认调用__init__()方法;

当删除一个对象时,python解释器也会默认调用一个方法,这个方法为__del__()方法

结果:

总结:

·当有1个变量保存了对象的引用时,此对象的引用计数就会加1

·当使用del删除变量指向的对象时,如果对象的引用计数不会1,比如3,那么此时只会让这个引用计数减1,即变为2,当再次调用del时,变为1,如果再调用1次del,此时会真的把对象进行删除

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.1面向对象 面向对象(object-oriented ;简称: OO)至今还没有统一的概念 我这里把它定义为:...
    TENG书阅读 576评论 0 0
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,757评论 0 9
  • 补充:http://www.cnblogs.com/tylerdonet/p/3483836.html在html里...
    Jalon阅读 514评论 0 0
  • 微商,怎么理解呢?可以说是通过网络进行销售的商人。微商,也可以说是通过这个行业获得利润的商人,微商。不管怎么理解,...
    奥特曼打怪兽啊啊阅读 311评论 0 1
  • 好多年没有再见的朋友,再见面时,觉得他们都有一点不同了。 有人有了一双悲伤的眼睛,有人有了冷酷的嘴角,有人是一脸的...
    My小栗子阅读 267评论 0 2