初识python 面向对象
what the f**k!!这个知识点学不好的最大元凶就是,我还单身???
python基础(四):
面向对象的三个特点: 封装,继承,多态
类:
对象是面向对象编程的核心,在使用对象的过程中,为了将具有共同特征和行为的一组对象抽象定义,提出了另外一个新的概念——类
类就相当于制造飞机时的图纸,用它来进行创建的飞机就相当于对象
类(Class) 由3个部分构成
- 类的名称:类名
- 类的属性:一组数据
- 类的方法:允许对进行操作的方法 (行为)
创建一个类:
class Car(object):# 类命名规则按照大驼峰命名法.首字母大写
# 方法
def getCarInfo(self):
print('车轮子个数:%d, 颜色%s'%(self.wheelNum, self.color))
补充:
有些代码的类可能没有继承object,这个问题在Python 3之后就不复存在了,因为Python3中所有的类都是新式类,由于涉及到深度和广度问题,有兴趣的朋友自己看看吧
#新式类是指继承object的类
class A(object):
...........
#经典类是指没有继承object的类
class A:
...........
类方法:
在类地内部,使用 def 关键字来定义一个方法,与一般函数定义不同,类方法必须包含参数 self, 且为第一个参数,self 代表的是类的实例
# 定义类
class Car:
#定义方法
# 移动
def move(self):
print('车在奔跑...') # 鸣笛
def toot(self):
print("车在鸣笛...嘟嘟..")
__init__()方法:#init前后符号是两条下划线 _ _ 不要搞错.
能够在创建对象的时候,就顺便把这个对象的属性给设置
# 定义汽车类
class Car: def __init__(self):
self.wheelNum = 4
self.color = '蓝色' #效果等同于上文的 BMW.color = '黑色', 只不过上文的是添加属性,这里的是在类里面就把属性写好了 def move(self):
print('车在跑,目标:夏威夷') # 创建对象
BMW = Car() print('车的颜色为:%s'%BMW.color)
print('车轮胎数量为:%d'%BMW.wheelNum)
__init__()方法,在创建一个对象时默认被调用,不需要手动调用__init__(self)中,默认有1个参数名字为self,如果在创建对象时传递了2个实参,那么__init__(self)中出了self作为第一个形参外还需要2个形参,例如__init__(self,x,y)__init__(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递进去
类对象:
类对象支持两种操作:属性引用和实例化
# 定义类
class Car:
# 移动
def move(self):
print('车在奔跑...') # 鸣笛
def toot(self):
print("车在鸣笛...嘟嘟..") # 创建一个对象,并用变量BMW来保存它的引用
BMW = Car()
BMW.color = '黑色' #给对象添加属性
BMW.wheelNum = 4 #轮子数量 给对象添加属性
BMW.move() # 调用对象的move方法
BMW.toot() # 调用对象的toot方法
print(BMW.color)
print(BMW.wheelNum) --->
车在奔跑...
车在鸣笛...嘟嘟..
黑色
4
- BMW = Car(),这样就产生了一个Car的实例对象,此时也可以通过实例对象BMW来访问属性或者方法
- 第一次使用BMW.color = '黑色'表示给BMW这个对象添加属性,如果后面再次出现BMW.color = xxx表示对属性进行修改
- BMW是一个对象,它拥有属性(数据)和方法(函数)
- 当创建一个对象时,就是用一个模子,来制造一个实物
类的继承:
子类获得了父类的全部功能
# 定义类
class Car:
# 移动
def move(self):
print('车在奔跑...') # 鸣笛
def toot(self):
print("车在鸣笛...嘟嘟..") class BMW(Car):
def stop(self):
print('stop') X5 = BMW()
Audi = Car() X5.move()
Audi.move() --->
车在奔跑...
车在奔跑...
初识python 面向对象的更多相关文章
- 初识python面向对象
一.初识python面向对象: class Person: #使用class关键字定义一个类 age=0 #类变量(静态变量) def eat(self,food): #定义一个方法 self.age ...
- 初识python面向对象编程
初识python面向对象编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.面向过程的程序设计思想 #!/usr/bin/env python #_*_coding:utf-8 ...
- Python面向对象01 /面向对象初识、面向对象结构、类、self、实例化对象
Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象初识 2. 面向 ...
- python 面向对象专题(一):面向对象初识、面向对象结构、类、self、实例化对象
https://www.cnblogs.com/liubing8/p/11301344.html 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- @1-2初识Python爬虫
初识Python爬虫 Python爬虫(入门+进阶) DC学院 环境搭建: Python2与Python3的差异:python2与python3整体差异不大,大多是一些语法上的区别,考虑到py ...
- 孤荷凌寒自学python第二十一天初识python的类
孤荷凌寒自学python第二十一天初识python的类 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 类是面向对象的编程语言非常重要的概念. 编程语言的进化史中从顺序编程到结构化编程,最后才 ...
- Python面向对象03 /继承
Python面向对象03 /继承 目录 Python面向对象03 /继承 1. 初识继承 2. 单继承 3. 多继承 4. 总结 1. 初识继承 概念:专业角度:如果B类继承A类,B类就称为子类,派生 ...
- python 面向对象专题(三):继承
目录 Python面向对象03 /继承 1. 初识继承 2. 单继承 3. 多继承 4. 总结 1. 初识继承 概念:专业角度:如果B类继承A类,B类就称为子类,派生类,A类就称为父类,超类,基类 种 ...
随机推荐
- dos.ORM配置和使用
处理oralce,sqlserver,access及其他常用数据库,下载和学习地址 1.web.config配置数据库连接字符串,以及数据库类型: <connectionStrings>& ...
- 导致SharePoint发生Timeout的几处门槛设置
IIS connection time-out setting =========================== 如何修改? Click Start, point to All Programs ...
- HTTP协议安全头部X-Content-Type-Options引入的问题
前段时间测试MM反馈了一个问题,在富文本编辑器里上传的图片无法正常呈现.因为Jackie在本机的环境上没有观察类似的现象,而恰好那天测试环境的某个重要配项被改错了,于是Jackie想当然的归类为配置项 ...
- Laravel SMS 短信发送包
Laravel Sms Laravel 贴合实际需求同时满足多种通道的短信发送组件 我们基于业务需求在 overtrue/easy-sms 基础进行扩展开发,主要实现如下目标: 支持短信验证码直接在 ...
- http状态码含义(来源于w3school):
状态码: 1xx: 信息 消息: 描述: 100 Continue 服务器仅接收到部分请求,但是一旦服务器并没有拒绝该请求,客户端应该继续发送其余的请求. 101 Switchi ...
- 【java开发系列】—— Tomcat编译报错
由于之前Eclipse里面有一个可移植性的web工程,但是在我很久没用后,再次登录这个IDE的时候就发现了问题. 首先,我的电脑里面有两个版本的JDK,1.6和1.7.两个版本的Tomcat6和7以及 ...
- NO.009-2018.02.14《临江仙·送钱穆父》宋代:苏轼
临江仙·送钱穆父_古诗文网 临江仙·送钱穆父 宋代:苏轼 一别都门三改火,天涯踏尽红尘.依然一笑作春温.无波真古井,有节是秋筠.自从我们在京城分别一晃又三年,远涉天涯你奔走辗转在人间.相逢一笑时依然像 ...
- 作为软件技术人员建立自己的git账户并保存资料的重要性
日常生活中,当修改并保存了一个文件,所得到的就是此文件的最新版本,假若今后因某一问题需要用到原来文件,可是很多情况下,这种修改是不可逆的.你修改完之后,无法回到你修改前的样子.为了避免这种情况,有的人 ...
- Python的免费在线学习课程
网上资源不是本人的,所以,只是转发.其它的不负责 http://www.imooc.com/learn/177
- 2018.11.11 Java的 三大框架:Struts+Hibernate+Spring
·定义:Java三大框架主要用来做WEN应用.Struts主要负责表示层的显示: Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作): Hibernate主要是数据持久化到数据库. ...