'''
**#实现功能**案列

姓名:王飞 年龄:30 性别:男 工龄:5
我承诺,我会认真教课。
王飞爱玩象棋

姓名:小明 年龄:15 性别:男 学号:00023102
我承诺,我会 好好学习。
小明爱玩足球。

**#案例题目描述:**
1.从案例效果分析有老师和学生2个事物,老师里面有姓名、年龄、性别、工龄几个变量。
2.学生里面有姓名、年龄、性别、学号几个变量。
3.老师里面有讲课、玩和显示信息的show方法。
4.学生里面有学习、玩和显示信息的show方法
5.分析老师和学生里面公有的东西抽象出一个父类出来,将公有的东西写在父类中
6.创建一个老师和一个学生并完成赋值。

**#案列分析**
老师类: Teacher
    属性:姓名、年龄、性别、工龄、

行为:Teach,play,show

学生类: Student
    属性:姓名、年龄、性别、学号

行为:study,play,show

父类:Person
    共有属性:姓名、年龄、性别

共有行为:play,show

'''

#父类

class Person:
#构造方法 成员属性
def __init__(self,name,age,sex):
self.name = name
self.age = age
self.sex = sex
def play(self,xingqu):
print(self.name + "爱玩" +xingqu) def show(self):
print("姓名:%s,年龄:%d, 性别:%s"%
(self.name,self.age,self.sex),end=',') #学生类
class Student(Person):
def __init__(self,name,age,sex,num): #添加功能
super().__init__(name,age,sex)
self.num = num def study(self):
print("%s承诺好好学习"%self.name) def show(self):
super().show()
print("学号:%s"%self.num) #教师类
class Teacher(Person):
def __init__(self,name,age,sex,gongling): 添加功能
super().__init__(name,age,sex)
self.gongling = gongling def teach(self): print("%s承诺好好教课"%self.name) def show(self):
super().show()
print("工龄:%s"%self.gongling)
#创建对象
s1 = Student('小明',18,"男","")
t1 = Teacher("老王",30,"男","") #调用方法
t1.show()
t1.teach()
t1.play("象棋")
s1.show()
s1.study()
s1.play("游戏")

python 面向对象之添加功能的更多相关文章

  1. python面向对象进阶 反射 单例模式 以及python实现类似java接口功能

    本篇将详细介绍Python 类的成员.成员修饰符.类的特殊成员. 类的成员 类的成员可以分为三大类:字段.方法和特性. 注:所有成员中,只有普通字段的内容保存对象中,即:根据此类创建了多少对象,在内存 ...

  2. Python 面向对象 基础

    编程范式概述:面向过程 和 面向对象 以及函数式编程 面向过程:(Procedure Oriented)是一种以事件为中心的编程思想. 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现 ...

  3. python面向对象进阶(八)

    上一篇<Python 面向对象初级(七)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使 ...

  4. python 面向对象(进阶篇)

    上一篇<Python 面向对象(初级篇)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使 ...

  5. python 面向对象编程学习

    1. 问题:将所有代码放入一个py文件:无法维护 方案:如果将代码才分放到多个py文件,好处: 1. 同一个名字的变量互相不影响 2.易于维护 3.引用模块: import module 2.包:解决 ...

  6. python 面向对象学习

    ------Python面向对象初 下面写一个类的简单实用,以便方便理解类 #python 3.5环境,解释器在linux需要改变 #阅读手册查询readme文件 #作者:S12-陈金彭 class ...

  7. python面向对象(二)——类成员

    Python面向对象    类成员 1.字段         普通字段    属于对象         静态字段    属于类   2.方法 普通方法   触发者是对象    括号里至少一个参数 se ...

  8. Python开发【第七篇】:面向对象 和 python面向对象进阶篇(下)

    Python开发[第七篇]:面向对象   详见:<Python之路[第五篇]:面向对象及相关> python 面向对象(进阶篇)   上一篇<Python 面向对象(初级篇)> ...

  9. Python 面向对象之一

    Python 面向对象之 类与属性 今天接触了一下面向对象,发现面向对象和之前理解的简直就是天壤之别,在学Linux的时候,一切皆文件,现在学面向对象了,so,一切皆对象. 之前不是一直在学的用面向函 ...

随机推荐

  1. 将ojdbc 添加到maven

    去oracle官网下载jar包 然后在jar包所在目录输入maven命令 mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdb ...

  2. 盒模型的属性丶display显示丶浮动

    一丶盒模型的属性(重要) 1.padding padding是标准文档流,父子之间调整位置 <!DOCTYPE html> <html> <head> <me ...

  3. mui.ajax()和asp.net sql服务器数据交互【2】json数组和封装

    今天没有做循环创建显示:可以参考张鑫旭的文章:<基于HTML模板和JSON数据的JavaScript交互> 1.ashx页面代码 //下面的封装一般框架底层都是写好的:连接 数据库和获取D ...

  4. hdu 4513 吉哥系列故事——完美队形II (manachar算法)

    吉哥系列故事——完美队形II Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) P ...

  5. Linux ->> Apt-get命令安装软件

    Apt全称Advanced Package Tool.Apt-get适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统. 用法: apt-cache ...

  6. How I explained OOD to my wife

    Introduction My wife Farhana wants to resume her career as a software developer (she started her car ...

  7. 在Visualsvn Server上创建svn账号和密码

    VisualSVN Server是一个集成的svn服务端工具,是一款svn服务端不可多得的好工具.可以先安装好VisualSVN Server后,运行VisualSVN Server Manger,然 ...

  8. 在windows上安装nginx并注册

    在windows上安装nginx并注册 一.前言   最近自己也尝试了一下在windows上安装nginx,其实非常的简单,这里算是备忘一下. 二.在windows下面安装   首先需要到nginx的 ...

  9. appium 获取app的应用包名package和activity

    第一种,使用sdk自带的工具aapt,在sdk\builds-tools\目录下,切换到aapt所在目录 命令:aapt dump badging app的路径,运行后的结果中以下两行分别是应用包名p ...

  10. GO语言(七)多核并行化的问题

    package main import "fmt" type Vector []float64 func (v Vector) DoSome(i,n int, u Vector, ...