举例

面向对象的合理解释就是:我是人这个类,对象化以后我就是一个个体OLIVER

对象化就是在人这个大类中,将某个人指名道姓,具体到某个人

下面是一个具体的实例一:

#!/usr/bin/python
#-*- coding:UTF-8 -*-
class CompanyMember:
#总人数,这个类的变量
MemberCount = 29
#__ini__方法在类的对象被创建时候执行
def __init__(self,name):
self.name = name
CompanyMember.MemberCount +=1
print ("公司来了一个新成员:%s" % self.name)
print ("现有成员%d人" % CompanyMember.MemberCount)
#新建一个方法,新员工介绍
def introduce(self):
print("我的名字叫做:%s" % self.name) #领导继承公司成员类
class Leader(CompanyMember):
def __init__(self,name,salary):
CompanyMember.__init__(self,name)
self.salary = salary
self.name=name
def introduce(self):
CompanyMember.introduce(self)
print("%s是领导:我的工资是%d" % (self.name,self.salary)) #部门经理继承公司成员类
class Manager(CompanyMember):
def __init__(self,name,Location):
CompanyMember.__init__(self,name)
self.Location=Location
self.name=name
def introduce(self):
CompanyMember.introduce(self)
print("%s是%s部门的部门经理" % (self.name,self.Location))
# 创建一个新员工对象
CompanyMember1=CompanyMember("OLIVER")
CompanyMember1.introduce()
print("--------------------------")
#创建一个领导对象
Leader1=Leader("jack",360000)
Leader1.introduce()
print("--------------------------")
#创建一个部门经理对象
Manager1=Manager("john","Sales")
Manager1.introduce()

实例二:

#!/usr/bin/python
#-*- coding:UTF-8 -*- class Employee:
'所有员工的基类'
empCount=0
#定义方法
def __init__(self,name,salary):
self.name = name
self.salary = salary
Employee.empCount+=1 def displayCount(self):
print("total Employee %d" %Employee.empCount)
def displayEmployee(self):
print("Name :",self.name,",Salary:",self.salary)
"#创建 Employee 类的第一个对象"
emp1=Employee("OLIVER","") "创建 Employee的第二个对象"
emp2=Employee("QIN",'') emp1.displayEmployee()
emp2.displayEmployee() print ("Total Employee %d" % Employee.empCount)

总结

将东西根据属性归类 ( 将object归为class )

方法是一种属性,表示动作

用继承来说明父类-子类关系。子类自动具有父类的所有属性。

self代表了根据类定义而创建的对象。

建立对一个对象: 对象名 = 类名()

引用对象的属性: object.attribute

【Python】学习笔记八:面向对象的更多相关文章

  1. Python学习笔记八

    类的高级用法 多态:   在其他语言,使用的是类的继承. 在python中,不需要指定数据类型. 基于TCP协议的socket通信实现: 类似于打电话的情景. 服务端: 1.买手机 2.插卡 3.开机 ...

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

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

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

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

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

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

  5. Python学习笔记八:ORM框架SQLAlchemy

    一:SQLAlchemy使用 1:实体类的创建 ORM中的实体类与一般的Python类不同,在其中,使用 __tablename__=""指明该类与数据库中某个表相对应,然后定义一 ...

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

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

  7. python学习笔记(七):面向对象编程、类

    一.面向对象编程 面向对象--Object Oriented Programming,简称oop,是一种程序设计思想.在说面向对象之前,先说一下什么是编程范式,编程范式你按照什么方式来去编程,去实现一 ...

  8. python学习笔记(6)--面向对象学习

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.   引言 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做(人狗大战)的游戏,你就思 ...

  9. python学习笔记(10):面向对象

    一.类和实例 1.类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 2.对象:通过类定义的数据结构实例.对象包括两个数据成员( ...

  10. python学习笔记(7): 面向对象

    class Foo: #类中的函数 def bar(self): #功能阐述 print('Bar') pass def hello(self,name): print('i am %s' %name ...

随机推荐

  1. [Atcoder Regular Contest 061] Tutorial

    Link: ARC061 传送门 C: 暴力$dfs$就好了 #include <bits/stdc++.h> using namespace std; typedef long long ...

  2. 【模拟退火】poj1379 Run Away

    题意:平面上找一个点,使得其到给定的n个点的距离的最小值最大. 模拟退火看这篇:http://www.cnblogs.com/autsky-jadek/p/7524208.html 这题稍有不同之处仅 ...

  3. 误改sudoers的访问权限后的修复

     sudo: /etc/sudoers is mode 0777, should be 0440"问题的解决方法 ubuntu进入单用户模式,修改sudoers权限,修改root密码 1.重 ...

  4. Java并发(六):volatile的实现原理

    synchronized是一个重量级的锁,volatile通常被比喻成轻量级的synchronized volatile是一个变量修饰符,只能用来修饰变量. volatile写:当写一个volatil ...

  5. GUN C/C++ __attribute__ 用法 转

     http://blog.csdn.net/mydo/article/details/3738336     GNUC的一大特色(却不被初学者所知)就是__attribute__机制.__attrib ...

  6. mysql原创博客

    http://blog.itpub.net/15480802/viewspace-1755100/

  7. Office(Excel、Word)二次开发——VSTO

    Office(Excel.Word)二次开发——VSTO Office(Excel.Word)二次开发——VSTO Office二次开发模式: 1) VBA(visual studio for app ...

  8. Netty游戏服务器之三搭建Unity客户端

    既然已经写完了相关的服务器处理类,那么我们就来搭建客户端测试一下. 打开我们的unity3d,然后新建一个c#脚本,取名为MainClient. public class MainClient : M ...

  9. Android 卡顿优化 4 布局优化实际技巧

    今天分享一些layout布局书写中的一些技巧,希望看过之后你也一样可以写出性价比高的布局.我个人的目标是用最少的View写出一样效果的布局.因为我相信View的数量减少伴随着的就是层级的减少.从而达到 ...

  10. 新手遇到的问题:Easy UI的对话框老是在页面载入完毕后自己主动弹出

    因为是第一次接触Easy UI,还不是非常熟悉,尝试了一下对话框功能,还是非常不错的.但问题是页面载入完毕后.全部的对话框都自己主动弹出来了,百度了好久,也没有详细说明确的,貌似别人都没有这个问题哦 ...