美文网首页
007-类和对象

007-类和对象

作者: yukiko666 | 来源:发表于2019-06-18 17:29 被阅读0次

Java - 强制面向对象 类

Python - 既支持面向对象,也支持面向过程

1、类、对象

类是对某一类具有共同特点的事物的抽象,是在概念上的一个定义

比如:人、学生、汽车。但是单独说这三个概念的时候,不代表任何一个具体的个体

类的具体实例叫做 【对象】 【类的实例】 【实例化一个类】

学生是类,张三是一个具体的学生就是 学生类的实例(Instance),也叫学生对象

2、变量和方法

特征、属性——变量

行为、功能——方法(函数)

举例:人、汽车

*成员变量、成员方法:

每个实例(对象、成员)间独立的,与其他成员不同的、不相关的

变量:姓名、年龄、身高体重

方法:吃饭、学习、唱歌

*类变量、类方法:

所有实例共用的、相同的,或只跟类有关而跟具体实例无关的

变量:学校、学生总数、放学时间

方法:上学、放学

3、类的定义

class 类名(父类):

类实体

*类名:每个单词的首字母大写

**属性的定义:

*成员变量

构造函数(初始化函数) __init__(self)

作用:python在创建类的实例的时候,会调用这个类的__init__()方法

初始化数据

self:创建的实例自身(存储当前对象的地址)

所有的成员方法第一个参数默认是self,但是调用的时候不需要传值

成员变量--属于实例的变量

每次实例化就创建,实例结束就销毁

*一般是在__init__方法中通过self完成 定义

*类内部:通过*self访问*,类外部:通过实例访问

*类的实例化

类名(),括号内根据类的构造方法规定的参数传参(self除外)

*类变量

属于类的变量,

*在类起始处统一定义

*类内部:通过*类名*或*cls关键字*来访问;类外部:通过类名或实例来访问

每次实例化新对象时,拷贝一个副本给对象

通过实例的修改只对当前实例生效,通过类名的修改才能改变整个类所有对象的值

*成员(实例)方法

定义:必须带有参数self

内部:可以访问成员变量、类变量(self或类名)、成员方法(self)、类方法(self或类名)

通过self调用

外部:通过类实例调用

*类方法

定义:必须带有@classmethod、和cls参数

内部:可以访问类变量、类方法

外部:通过类实例或类名调用

*静态方法

定义:必须带有@staticmethod

内部:如果静态方法调用类方法或属性时,只能直接类名.属性名或类名.方法名

外部:通过类实例或类名调用

4、私有变量:__变量名

python使用的是名字重整技术,改变了私有变量的值:_类名__变量名

私有方法:

__xx()

专属变量

__xx__

特殊方法:

__xx__() 代表一定的协议,相当于Java中的接口方法

* __str__()与__repr__()

__str__() --让class作用于print()函数

(了解即可)__repr__() --返回程序开发者看到的字符串

* __len__() --让class作用于len()函数

__iter__() --让class具有可迭代的属性,返回值必须是对象自己

next():每一次for循环都调用该方法

__getitem__() --让class作用于索引方式

__getattr__()

当调用不存在的属性时,会试图调用此方法,来尝试获得属性

5、封装

变量私有化 + 提供getter和setter方法

6、继承和多态

多态

1.当我们需要传入一个对象时,我们可以不传入具体的类型,而传入一个抽象的概念---父类对象

2.这样,在程序实际运行时,可以动态绑定传入的类型

3.因为都有共同的父类,所以一定有共同的方法。使用时,内部使用时,调用共有的方法就可以

isinstance(instance, class)方法

多重继承

(class1, class2, class3) --class1优先

相关文章

  • 007-类和对象

    Java - 强制面向对象 类 Python - 既支持面向对象,也支持面向过程 1、类、对象 类是对某一类具有共...

  • 对象、类对象和元类对象

    http://www.tuicool.com/articles/mmyuUr http://blog.csdn.n...

  • python 类和对象

    类和对象 目标 类和对象的概念 类和对象的关系 类的设计 01. 类和对象的概念 类 和 对象 是 面向对象编程的...

  • 类,类对象和实例对象

    Python 的类定义写完之后就成了一个类对象,而引用这个类对象的就是实例对象。 类中定义的属性和方法都是静态属性...

  • 面相对象-02类和对象

    类和对象 目标 ●类和对象的概念●类和对象的关系●类的设计 01.类和对象的概念 类和对象是面向对象编程的两个核心...

  • python语法入门五

    类和对象 类和对象 基础 继承:python为多继承 类、类对象和实例对象 当实例对象声明后,再删除类对象,那么该...

  • 13.Python类和对象

    目标 类和对象的概念 类和对象的关系 类的设计 01. 类和对象的概念 类 和 对象 是 面向对象编程的 两个 核...

  • 12.Python类和对象

    目标 类和对象的概念 类和对象的关系 类的设计 01. 类和对象的概念 类 和 对象 是 面向对象编程的 两个 核...

  • 类和对象 ​​​

  • 类和对象

    对象=属性+方法 self 由同一个类可以生成无数对象,当一个对象的方法被调用是,对象会将自身的引用作为第一个参数...

网友评论

      本文标题:007-类和对象

      本文链接:https://www.haomeiwen.com/subject/juhqqctx.html