面向对象---成员,嵌套(建模)

上一篇面向对象文字介绍了面向对象基本知识:

①面向对象是一种编程方式,此编程方式的实现是基于类和对象的使用

②类是一个模板,模板中包装了多个‘函数‘供使用(可以讲多函数中公用的变量封装到对象中)

③对象,根据模板创建的实例(即:对象),实例中用于调用被包装(封装)在类中的函数

④面向对象的三大特性:封装,继承和多态

本片讲介绍python类的成员,以及成员修饰符,类的特殊成员

类的成员                                                                                                                    

类的成员可以分为三大类:字段,方法和属性

注:所有成员中,只有普通字段的内容保存对象中,即:根据此类创建了多少对象,在内存中就有多少个普通字段。而其他的成员,则都是保存在类中,即:无论对象的多少,在内存中只创建一份。

class Foo:
    # 方法
    def __init__(self, name):
        # 实例变量/字段
        self.name = name

    # 方法
    def func(self):
        pass

    # obj,Foo类的对象

# obj,Foo类的实例
obj = Foo(‘赵瑞鑫‘)

类的成员

一,成员分为三类

变量:

  实例化变量(字段)

class Foo:
    contry = ‘中国‘#;类变量(静态字段)
    def __init__(self,name):
        self.name = name#实例变量(字段)

    def func(self):
        pass

obj_1 = Foo(‘小白‘)
obj_2 = Foo(‘后福‘)

变量和类的关系

如果你执行obj.func()的话,obj就去Foo里面找self如图所示

对象和类之间的关系

     ---公有实例变量(字段)  

    ---私有实例变量(字段)

  类变量(静态字段)

    ---公有类变量(静态字段)

    ---私有类变量(静态字段)   

原文地址:https://www.cnblogs.com/zhaodingding/p/9550429.html

时间: 2024-11-13 06:56:31

面向对象---成员,嵌套(建模)的相关文章

C++面向对象—成员函数与成员变量的实现机制学习笔记(1)

<深度搜索C++对象模型>的一些学习纪要: 原文链接:ordeder   http://blog.csdn.net/ordeder/article/details/26396989 一成员变量篇 0. 类的编译中,先编译成员变量和成员函数的额声明,成员函数的定义在类声明结束后再处理: 1. 类中,多个代码区块public或者private最终会被按区块统一,然后编译过程中,后定义的成员变量地址高于定义的成员变量: 2. 静态变量在程序启动时初始化,存储的位置在于程序的全局数据段中: 3. 继承

类的成员和嵌套(建模)

一. 类的成员共分为三类: 字段, 方法, 属性 class Foo: country = '中国' # 静态字段 def __init__(self, name): self.name = name # 普通字段 def func(self): # 普通方法, 至少有一个self参数 pass @staticmethod # 静态方法, 无默认参数 def func2(): pass @classmethod # 类方法, 至少有一个cls参数 def func3(cls): pass @pr

python学习笔记-Day8 上(pickle补充、字段、面向对象成员、成员修饰符、特殊方法)

pickle 序列化补充 # pickle load # 现在有两个python程序,调用关系如下 # s1.py class foo: …. Obj = foo(x,y) Pickle.dump(obj, open(‘db’,’wb’)) S2.py # s2.py from s1 import foo pickle.load(db) # s2.py 反序列化加载包含对象,一定要先导入对象对应的类,否则Pickle load将会报错 类多继承关系 有共同父类的继承关系如下 如图,如果我们有两个

数组 面向对象 成员变量和局部变量额区别

一.数组 1.数组中常见的错误: 1.NullPointerExcepation : 空指针异常 原因:引用的类型变量没有指向任何的对象,在这种情况下还访问了它的属性和方法. 一个对象如果使用完了不会立马释放,只是将这个对象变为一个垃圾对象,由垃圾回收机制自己来释放.,我们没办法操作它释放. 2.ArrayIndexOutOfBoundsExcepation :数组下表越界. 二.面向对象 1.java也属于面向对象编程 : 2.面向对象的三大特征 : 封装,继承,多态.类,对象. 3.对象 :

面向对象--类,嵌套

一:类的成员: 例: class Foo: #创建类 #方法 def __init__(self,name): #实例变量/字段 self.name = name #方法 def func(self): pass #obj.Foo类的对象 #obj.Foo类的实例 obj = Foo('四大龙王') 成员分为三类:  字段 - 方法 - 属性 字段(变量): - 实例变量(字段) -公有实例变量(字段) class Foo: def __init__(self,name): self.name

17. 面向对象 -成员

三十六.面向对象的成员 能写的所有成员 一.变量 1.实例变量    访问时      对象.变量 2.类变量         访问时     类名.变量 注意: 二.方法 1.实例方法 必须有一个参数(self) 调用时      对象.变量() 2.类方法 必须有一个参数(cls) 定义时在方法前加        @classmethod 调用时       类名.变量() 3.静态方法(属于类) 可以不用参数 定义时 在方法前加       @staticmethod 调用时       

python之路--17. 面向对象 -成员

三十六.面向对象的成员 能写的所有成员 一.变量 1.实例变量    访问时      对象.变量 2.类变量         访问时     类名.变量 注意: 二.方法 1.实例方法 必须有一个参数(self) 调用时      对象.变量() 2.类方法 必须有一个参数(cls) 定义时在方法前加        @classmethod 调用时       类名.变量() 3.静态方法(属于类) 可以不用参数 定义时 在方法前加       @staticmethod 调用时       

面向对象——成员

属 性 是什么 属 性:对应类中的成员变量 Field = 属性 = 成员变量, 语法格式: 修饰符  类型  属性名 =初值 ; 说明:修饰符private:该属性只能由该类的方法访问. 修饰符public:该属性可以被该类以外的方法访问. 类型:任何基本类型,如int.boolean或任何类. 举例: public class Person{ private int age;             //声明private变量 age public String name = “Lila”;

45 面向对象成员变量和局部变量的区别

在类中的位置不同 成员变量  在类中方法外 局部变量 在方法定义中或者方法声明上 在内存中的位置不同 成员变量 在堆内存中 局部变量  在栈内存中 生命周期不同 成员变量 随着对象的产生而存在,对象的消失而消失 局部变量      随着方法的调用而存在,随着方法的消失而消失 初始化值不同 成员变量 有默认初始化值 局部变量  没有默认初始化值,必须定义赋值然后使用 局部变量名称可以和成员变量名称一样 在方法上使用采用就近原则 基本数据变量变量: 引用数据类型变量  数组 类 接口 枚举