1. # -*- coding: utf-8 -*-
  2. #python 27
  3. #xiaodeng
  4. #面向对象编程案例01
  5.  
  6. class Behave():
  7. def __init__(self,name):
  8. self.name=name
  9. def once(self):
  10. print "self.name-->",self.name
  11. def rename(self,newName):#重新赋值属性的def方法
  12. self.name=newName
  13. def repeat(self,N):#repeat-重复
  14. #新创建一个方法,其中调用once方法
  15. for i in range(N):
  16. self.once()
  17.  
  18. #
  19. beehive=Behave("xiaodeng")
  20. beehive.repeat(4)
  21. beehive.rename("FengMei")
  22. beehive.once()
  23. print beehive.name#点号后面可以接属性名或方法名()均可
  24. #重复赋值属性
  25. beehive.name="I love china"
  26. beehive.once()#返回值有一个None,原因是once构造函数只有print没有return语句
  27.  
  28. #类的自带方法
  29. #__len__
  30. print beehive.name.__len__()
  31.  
  32. print "----"*10
  33. #继承:子类继承父类(超类)的所有共有实例变量和方法,实现代码的重用,减少代码的编写量
  34. #python在类名后用一个圆括号表示继承关系,括号中的类表示父类
  35. #如果父类定义了__init__方法,则子类必须显示地调用父类的__init__方法,如果子类需要拓展父类的类行为,则可以添加__init__方法的参数
  36.  
  37. class Subclass(Behave):#继承Behave超类中的方法
  38. def once(self):#重写once(),针对once重写写其代码,原方法在此类中调用时失效
  39. print '继承:',self.name
  40. bb=Subclass("hubei")
  41. bb.repeat(2)
  42. #小结
  43. '''
  44. 1、定义函数(方法)和属性均有def语句
  45. 2、函数第一个参数默认为self,实例化对象本身;他代表当前对象的地址
  46. 3、__init__方法被称之为构造函数,也可以叫做初始化函数;目的是用来创建实例,他通过传递参数来初始化一个实例,__init__将主体部分新建的实例的属性
  47. 正确绑定,并初始化其状态。
  48. 4、类实例的行为由其他方法来实现,一般来讲,方法均会访问实例的属性
  49. 5、一旦实例化一个类,你是对类实例调用方法,访问的是类实例的属性,重新绑定也是类实例的属性
  50. '''

python 面向对象编程案例01的更多相关文章

  1. python面向对象编程进阶

    python面向对象编程进阶 一.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 1 ...

  2. 面向对象编程案例02--显示地调用父类的__init__()

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #面向对象编程案例02--显示地调用父类的__init__() ''' 继承是面向对象的重要特征之一,继承是2 ...

  3. python 面向对象编程学习

    1. 问题:将所有代码放入一个py文件:无法维护 方案:如果将代码才分放到多个py文件,好处: 1. 同一个名字的变量互相不影响 2.易于维护 3.引用模块: import module 2.包:解决 ...

  4. python 面向对象编程(一)

    一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法. 类是对现实世界中一些事物的封装,定义一个类可以采用下面的方式来定义: class c ...

  5. Python面向对象编程指南

    Python面向对象编程指南(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1SbD4gum4yGcUruH9icTPCQ 提取码:fzk5 复制这段内容后打开百度网 ...

  6. Python面向对象编程(下)

    本文主要通过几个实例介绍Python面向对象编程中的封装.继承.多态三大特性. 封装性 我们还是继续来看下上文中的例子,使用Student类创建一个对象,并修改对象的属性.代码如下: #-*- cod ...

  7. Python 面向对象编程——访问限制

    <无访问限制的对象> 在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑.但是,从前面Student类的定义来看(见:Py ...

  8. Python 面向对象编程 继承 和多态

    Python 面向对象编程 继承 和多态 一:多继承性 对于java我们熟悉的是一个类只能继承一个父类:但是对于C++ 一个子类可以有多个父亲,同样对于 Python一个类也可以有多个父亲 格式: c ...

  9. Python 面向对象编程基础

    Python 面向对象编程基础 虽然Pthon是解释性语言,但是Pthon可以进行面向对象开发,小到 脚本程序,大到3D游戏,Python都可以做到. 一类: 语法: class 类名: 类属性,方法 ...

随机推荐

  1. ADB与AVD的常见问题

    一.adb问题常用解决方法 若是模拟器启动正常,但是adb检测不到模拟器,我们给他一套不解释连招,下面教大家几招基础拳法. 1.基础拳法一:循环自动检测 下图那个小按钮,点它,狠狠的点它,然后点运行, ...

  2. 如何打开google,facebok等网站

    用记事本打开 C:\WINDOWS\System32\drivers\etc\hosts 文件,粘贴如下蓝色内容到文件里,然后输入 例如 https://www.google.com   https: ...

  3. (八十七)AutoLayout的简单介绍与实例

    AutoLayout是继AutoResizing之后的一种自己主动布局方法.攻克了AutoResizing无法处理控件间相互关系的问题. AutoLayout在storyboard中通过底部工具条设置 ...

  4. C++二维数组 取地址 复制给 二维指针

    本来应该是个简单的问题,但是我就不明白了,为什么会段错误了... #include<stdio.h> #define UINT32 unsigned int UINT32 NType1_X ...

  5. Java NIO: Non-blocking Server

    Even if you understand how the Java NIO non-blocking features work (Selector, Channel, Buffer etc.), ...

  6. Swift3.0:照片选择

    一.介绍 图片选择或者拍照功能: 1.选择相册中的图片或是拍照,都是通过UIImagePickerController控制器实例化一个对象,然后通过self.presentViewController ...

  7. Android 应用程序之间内容分享详解(二)

    转载请注明出处:http://blog.csdn.net/xiaanming/article/details/9428613 Android 应用程序之间内容分享详解(一) 之前给大家分享了你开发的应 ...

  8. go语言之进阶篇 select实现的超时机制

    1.select实现的超时机制 示例: package main import ( "fmt" "time" ) func main() { ch := mak ...

  9. 提高sql2005中带freetexttable和rank的全文检索的速度

    原来使用中的sql2005的全文检索的速度总是不如意,尤其是带rank的.今天搜了一下,原来在freetexttable中还有一个参数top_n_by_rank,是第4个参数.注意还要设置:EXEC ...

  10. DNS预解析dns-prefetch提升页面载入速度优化前端性能

    当浏览器请求一个URL的时候,通过firebug我们可以发现大概有以下几个过程:阻挡.域名解析.建立连接.发送请求.等待响应.接收数据.后面四个跟用户的网络情况和你的服务器处理速度有关,本文重点说说前 ...