面向对象的学习笔记
 
关键要素:
类:class
用来描述具有相同的属性和方法的对象的集合,它定义了该集合中每个对象所共有的属性和方法。
 
数据成员:
类的不同属性数据
 
对象:
类的一个实例
 
方法:
类中定义的函数,实现相关的功能
 
面向对象编程:
简称oop 是一种程序设计思想,oop把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数(方法)
面向对象的设计思想是从自然界中来的,因为在自然界中,类和实例(instance)的概念是很自然的。class是一种抽象概念,比如我们定义的student类,是指学生这个概念,而实例则是一个个体的student对象。
 
三大特性:封装、继承、多态
 
 
 
 
定义类 。
class Student (object): 以学生为例:
类体
 
class是类的定义的关键词,class后面紧接着的是类名,即Student,类名通常以大写单词开头,紧接泽(object)表示该类是从哪个类继承下来的,通常如果没有明确的类就使用object类,括号内一般为空默认就是继承object类,这是所有类最终都会继承的类,也就是基类。
class Student ():
 
属性初始化
由于类可以起到模版的作用,因此,可以在创建实例对象的时候,把一些我们认为必须绑定的属性强制填写进去。通过定义一个特殊的—init— 方法,如在创建Student 实例的时候,就把name,city等属性绑上去。
—init—方法的第一个参数self,表示创建的实例本身,因此 ,在—init—方法内部就可以把各种属性绑的到self,因为self就是指向创建的实例本身。有了—init—方法,在创建实例的时候,就不能传入空的参数,必须传入鱼—init—方法匹配的参数,但self不需要传,python解释器自己会把实例变量传进去。
class Student ():
 
def __init__(self,name,city):
self.name=name
self.city=city
 
 
定义方法:
类的方法除类第一个参数事self外,其他和普通函数一样。要调用一个方法,只需要在实例变量上直接调用
class Student ():
 
def __init__(self,name,city):
self.name=name
self.city=city
print ("my name is %s and come from %s" % (name, city))
 
def talk(self):
 
print ("hell0")
 
stu1=Student('uu','changsha')
stu1.talk()
 
stu2=Student('ll','shanghai')
stu2.talk()
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

python学习的新篇章--面向对象的更多相关文章

  1. 【python学习-5】面向对象的python

    python是一种面向对象的编程语言,虽然与C++一样,支持面向过程的程序设计,python完全可以使用函数.模块等方式来完成工作,但是当使用python编写一个较大的项目时,则应该考虑使用面向对象的 ...

  2. python 学习day6(面向对象)

    博客部分内容转自:http://www.cnblogs.com/wupeiqi/p/4493506.html 面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法 ...

  3. python 学习笔记7 面向对象编程

    一.概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强..." ...

  4. Python学习之路--面向对象

    1.面向对象概述 面向过程:根据业务逻辑从上到下写垒代码  函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可  面向对象:对函数进行分类和封装,让开发“更快更好更强...”  面向 ...

  5. python学习笔记六 面向对象相关下(基础篇)

    面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以将多函数中公用的变量封装到对象中) 对象,根据模板创建的 ...

  6. python学习笔记_week6_面向对象

    面向对象 介绍(特性(class.object--->封装.继承,多态)).--->世界万物,皆可分类:世界万物,皆可对象 只要是对象,就肯定属于某种品类:只要是对象,就肯定有属性 你是上 ...

  7. 从零开始的Python学习Episode 20——面向对象(3)

    面向对象之封装 封装,即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别:将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体. 隐藏 在python中用双下划线开 ...

  8. 从零开始的Python学习Episode 19——面向对象(2)

    面向对象之继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称 为基类或超类,新建的类称为派生类或子类. 子类会“”遗传”父类的属性,从而解决代码重用问 ...

  9. Python学习笔记016——面向对象

    面向对象是指用类来描述一个对象(实例),用类来建立实例与实例的关联关系 对象 : object     实例 : instance 1 类 1.1 什么是类 类是用来描述对象的工具,用类可以创建一个或 ...

随机推荐

  1. asp.net---jquery--ajax 实现滚动条滚动到底部分页显示

    前台:aspx页面 var bgtime = $(" #date1 ").val(); var overtime = $(" #date2 ").val(); ...

  2. EmguCV常用函数总结

    Emgucv常用函数总结: 读取图片 Mat SCr = new Mat(Form1.Path, Emgu.CV.CvEnum.LoadImageType.AnyColor); //根据路径创建指定的 ...

  3. python学习笔记(2)数据类型-字符串

    字符串是 Python 中最常用的数据类型.我们可以使用引号( ' 或 " )来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' ...

  4. nodejs 中国汉字模糊查询简单(很low)实现

    https://github.com/cclient/hanzimohusearch 部分代码

  5. mybatis参数映射

    转载地址:http://iyiguo.net/blog/2012/09/27/mybatis-param-mapping-rules/ 规则 非注解参数 当参数未使用@Param注解时,可以通过以下方 ...

  6. <USACO07JAN>解决问题Problem Solvingの思路

    日常为dp贡献脑细胞 #include<iostream> #include<cmath> #include<cstdio> #include<cstdlib ...

  7. 吴裕雄--天生自然 HADOOP大数据分布式处理:修改CenterOS 7系统时间为北京时间

  8. Acwing 843. n-皇后问题

    n-皇后问题是指将 n 个皇后放在 n∗n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行.同一列或同一斜线上. 现在给定整数n,请你输出所有的满足条件的棋子摆法. 输入格式 ...

  9. Linux用户与用户组的关系

    一.用户和用户组文件 1. /etc/passwd:所创建的用户账号和信息均存放在次文件中,所有用户可读取: 最后一个字段的值一般为/sbin/nologin,表示该账号不能用来登陆linux系统: ...

  10. 给文本中的url加超级链接,同时滤过已加过链接的url

    /** * 给文本中的url加超级链接,同时滤过已有链接的url * @param string $str [description] * @return [type] [description] * ...