对于这些类成员有修饰符

之前定义字段country任何对象都可以访问,是公有的

可以定义为私用属性,只有类内部的方法可以调用,外部不能直接调用,但是可以间接调用

vim day7-10.py

#!/usr/bin/python
# -*- coding:utf-8 -*- class Foo(object): __country = "中国" def func(self):
print Foo.__country obj = Foo()
obj.func()

如果直接在外部调用Foo.__country会报错

同样在方法前面加两个下划线在类的外部的无法调用

PS:私有的方法只能内部访问,就算是继承也是无法调用访问的

可以在外部使用方法调用

vim day7-11.py

#!/usr/bin/python
# -*- coding:utf-8 -*- class Foo(object): __country = "中国" def __init__(self):
self.__name = 'alex' obj = Foo()
#obj.__name
print obj._Foo__name

  

PS:这种方法不推荐使用

  想使用就用间接方式应用

小结:

1,面向对象三大特性

  封装,继承,多态(python用不到)

2,python,封装

  a,多个方法公用一组变量,变量封装到对象中

  b,多个方法封装在一个类中

3,继承

  a,基类,派生类

  b,多继承

  c,新式类,经典类

  d,广度优先,深度优先

4,类,对象

5,类成员

  a,字段

普通(保存在对象中) 静态(保存在内存中)

  b,方法

    普通方法     触发者:对象  至少一个self 参数

    类方法        触发者:类  只有一个cls 参数

    静态方法     触发者:类   任意参数

  c,属性(属性是对方法的变种,访问时和字段相似)

    @property  

     Data = property(方法名)

        #obj.Data = 执行方法并获取返回值

    新式类中属性

    @property      #设置属性

    @方法名.setter    #获取属性

    @方法名.deleter    #删除属性

6,类成员修饰符

  公有 私有(加两个下划线__,只能内部访问,也能强制访问,最好间接访问)

作业

1,计算器

2,游戏人生

面向对象

练习 paramiko,configpaser

Python面向对象之成员修饰符的更多相关文章

  1. python面向对象之类成员修饰符

      类的所有成员分为: 公有成员,在任何地方都能访问 私有成员,只有在类的内部才能访问 私有成员和公有成员的定义不同:私有成员命名时,前两个字符是下划线.(特殊成员除外,例如:__init__.__c ...

  2. Python:Day25 成员修饰符、特殊成员、反射、单例

    一.成员修饰符 共有成员 私有成员,__字段名,__方法 - 无法直接访问,只能间接访问 class Foo: def __init__(self,name,age): self.name = nam ...

  3. Python学习 :面向对象 -- 成员修饰符

    成员修饰符 两种成员 - 公有成员 - 私有成员, __字段名 - 无法直接访问,只能通过内部方法来间接访问私有成员 简例:公有成员与私有成员  class Info: country = '中国' ...

  4. Python学习:17.Python面向对象(四、属性(特性),成员修饰符,类的特殊成员)

    一.属性(特性) 普通方法去执行的时候,后面需要加括号,特性方法执行的时候和静态字段一样不需要不需要加括号. 特性方法不和字段同名. 特性方法不能传参数. 在我们定义数据库字段类的时候,往往需要对其中 ...

  5. python学习day20 面向对象(二)类成员&成员修饰符

    1.成员 类成员 类变量 绑定方法 类方法 静态方法 属性 实例成员(对象) 实例变量 1.1实例变量 类实例化后的对象内部的变量 1.2类变量 类中的变量,写在类的下一级和方法同一级. 访问方法: ...

  6. Python面向对象(成员修饰符)

    day25 成员修饰符 class Foo: def __init__(self, name, age): self.name = name self.__age = age#私有,外部无法直接访问 ...

  7. python_way,day8 面向对象【多态、成员--字段 方法 属性、成员修饰符、特殊成员、异常处理、设计模式之单例模式、模块:isinstance、issubclass】

    python_way day8 一.面向对象三大特性: 多态 二.面向对象中的成员 字段.方法属性 三.成员修饰符 四.特殊成员 __init__.__doc__.__call__.__setitem ...

  8. Python_day8_面向对象(多态、成员修饰符、类中特殊方法、对象边缘知识)、异常处理之篇

    一.面向对象之多态 1.多态:简而言子就是多种形态或多种类型 python中不支持多态也用不到多态,多态的概念是应用与java/C#中指定传参的数据类型, java多态传参:必须是传参数的数据类型或传 ...

  9. 文成小盆友python-num8 面向对象中的成员,成员修饰符,特殊成员,异常处理,设计模式之单例模式

    本节主要内容: 1.面向对象中的成员 2.成员修饰符 3.特殊成员 4.异常处理 5.设计模式之单例模式 一.面向对象中的成员(类的成员) 类的成员总共可以分为3大类,每类中有不同的分支. 1.总述, ...

随机推荐

  1. linux环境中iostat命令的安装,解决-bash: iostat: command not found问题

    需求说明: 今天在测试环境的主机上,准备通过iostat来查看系统的io情况,发现没有该命令 [root@testvm Packages]# iostat -bash: iostat: command ...

  2. [GPU] CUDA for Deep Learning, why?

    又是一枚祖国的骚年,阅览做做笔记:http://www.cnblogs.com/neopenx/p/4643705.html 这里只是一些基础知识.帮助理解DL tool的实现. 最新补充:我需要一台 ...

  3. 本地推送UILocalNotification(转)

    1.增加一个本地推送 //设置20秒之后 NSDate *date = [NSDate dateWithTimeIntervalSinceNow:]; //chuagjian一个本地推送 UILoca ...

  4. ios开发之--调整UISearchBar的输入框的背景颜色

    遍历UISearchBar的子视图,找到输入框坐在的view,添加背景颜色即可. 代码如下: UISearchBar *searchBar = [[UISearchBar alloc] initWit ...

  5. sql 替换字符串

    MSSQL替换语句: )),'abc.com','123.com') 例如: update PE_Article set Content=replace(cast(Content as varchar ...

  6. 【RF库测试】算法运算

  7. Android开发-- findViewById()方法得到空指针

    如果想通过调用findViewById()方法获取到相应的控件,必须要求当前Activity的layout通过setContentView. 如果你通过其他方法添加了一个layout,如需获取这个la ...

  8. TOMCAT可以稳定支持的最大并发用户数

    转自:http://blog.sina.com.cn/s/blog_68b7d2f50101ann7.html 服务器配置: 单硬盘,SATA   8MB缓存 测试服务器和loadrunner运行服务 ...

  9. oracle nvl,having的用法

    select oi.order_id,opl.payment_no,opl.back_no, oi.commit_time, oi.receive_mobile, oi.receive_user, n ...

  10. UIWindow 详解及使用场景

    首先来看一下UIWindow 继承关系 方法和属性 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIWindow : UIView //window的屏幕,默认是 [ ...