码迷,mamicode.com
首页 > 其他好文 > 详细

类 和 对象 基础

时间:2019-10-09 21:18:32      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:命名   名称空间   不同的   面向过程   编写程序   流程化   维护   优先   面向对象   

面向对象基础:

1 什么是面向对象?

指的是一种编程思想

面向过程编程:
核心是‘过程’二字,过程指的是做事情的步骤,即先做什么后做什么
基于该编程思想编写程序,好比一条工厂流水线,一种机械式的思维方式。

优点:
逻辑清晰,复杂的问题流程化,进而简单化。
缺点:
可扩展性差。

面向对象编程:
核心是‘对象’二字,对象指的是特征与技能的结合体。
基于该编程思想编写程序,好比在创造世界,一种上帝式的思维方式。

优点:
可扩展性强,已于维护,

缺点:
编写程序的复杂程度远高于面向过程的编程。

优先使用面向对象还是面向过程?
面向过程结合面向对象一起使用。
实例:选课系统项目

如何造对象?首先需要学习类。

什么是类?
类型、类别、分类、

在现实世界中:
对象是一个个具体存在的事物,类是由人类总结出来的抽象概念。

在程序中:
必须遵循先有类再有对象。

如何定义类?
1、先从现实世界中,基于一个个的对象,提取出类。
2、再定义类。

对象:特征与技能的结合体
类:是一系列相同特征与技能的对象的结合体

如何定义类和对象:
先定义类,后调用类创造对象。

定义类的语法:

class 类名:
对象相同的特征
对象相同的技能

class SchoolStudent:
    pass

class:用来定义类的,其后跟的是类名。
类名:类的名字,用来调用创造对象的。

注意:类名必须遵循驼峰命名法,python在定义变量和函数时不推荐使用驼峰体,但定义类时推荐使用驼峰体。

定义类发生的事情:
1、类在定义时,会生成一个空的名称空间
2、会把类内部所有的名字,放进这个名称空间

调用类发生的事情:
1、调用类时,即生成一个对象(实例化对象),同时生成此对象的的名称空间
2、会自动触发_ _ init _
3、会把对象本身以及括号内的参数一并传给
_ init _ _函数。

查找顺序:
调用对象查找属性时,先查找对象的名称空间,没有再查找类的名称空间

类:
相同的特征:--> 内部的变量

? 相同的技能:--> 内部的函数

类内部的函数主要是给对象用的:
1、由类来调用类内部的函数,该函数只是一个普通的函数,
函数需要几个参数就必须传入几个参数。
2、由对象来调用类内部的函数,函数称之为对象的绑定方法,
不同的对象调用该绑定方法,则会将不同的对象传入该绑定方法中

对象的绑定方法,是由对象来调用的
特殊之处是把对象当作第一个参数传给该绑定方法的self参数

修改:
类.特征或技能 的方式对类内部的名字进行修改。
‘.’会指向类内部的名称空间,从而获取名字

类 和 对象 基础

标签:命名   名称空间   不同的   面向过程   编写程序   流程化   维护   优先   面向对象   

原文地址:https://www.cnblogs.com/allenchen168/p/11644217.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!