• 类和对象


    前面我讲到基本数据类型用来表示最常见的信息,但信息有无穷多种,为了更好的表达信息,我们可以创建自定义的数据类型。

    一种数据类型就是一个类。例如整数,浮点数,字符串等。

    类的定义

    python中通过关键字class可以定义一个自定义的数据类型,基本语法如下:

    class 类名:
        属性
        方法
    

    注意:python中类名规则同变量名,但是一般使用大驼峰来表示。

    案例:创建一个Point类用于表示平面坐标系中的一个点

    class Point:
        """
        表示平面坐标系中的一个点
        """
    print(Cat)
    <class '__main__.Point'>
    

    三双引号中的类容是类的说明文档。

    对象

    某种数据类型的一个具体的数据称为这个类的一个对象或者实例。

    例如,1是整数的一个对象,'hello'是字符串的一个对象。

    我认为,所谓的面向对象,就是把一些数据抽象成类的思想。置于作用,深入学习之后才会有体会,这里不做过多的说明。

    我们经常听到这样一句话:"python是一门面向对象的编程语言,python中一切皆对象。"

    这意味着python中任何数据都有其对应的类型,例如函数也是一个类,定义的某个函数就是函数类型的一个具体实例。

    >>> def func():
    ...     pass
    >>> print(type(func))
    <class 'function'>
    

    实例化

    通过类创建对象叫做实例化。

    除了基本数据类型的实例化过程用到了特殊的语法外,所有自定义的数据类型进行实例化都是通过调用类名来实现的,非常简单,语法如下:

    类名([参数])
    

    看起来和调用函数一样(实际上就是调用了一些函数)。

    案例:

    给上面创建的Point类创建一个实例。

    >>> p = Point()
    >>> print(p, type(p))
    <__main__.Point object at 0x000001FC02CBBD00> <class '__main__.Point'>
    

    直接打印对象默认会返回其内存地址。

  • 相关阅读:
    1-1 课程简介 & 2-1 IDEA与Eclipse的不同 & 2-3 Intellij IDEA安装
    MyBatis入门
    贪婪法——————贪心算法
    Java排序之直接选择排序
    是时候学一波STL了。。。
    Java提高篇(三一)-----Stack
    Android 经常使用工作命令mmm,mm,m,croot,cgrep,jgrep,resgrep,godir
    【POJ 2750】 Potted Flower(线段树套dp)
    POJ 题目3321 Apple Tree(线段树)
    Android新手入门2016(14)--FragmentTabHost实现选项卡和菜单
  • 原文地址:https://www.cnblogs.com/superwuchaofan/p/16627330.html
Copyright © 2020-2023  润新知