面向对象概念
admin
2023-07-19 05:41:34
0

实现不同种类之间功能无法互相调用

def dog(name,dog_type):
def bark(d):
print("dog %s: 汪。。汪。汪。。。"%d["name"])
data={"name":name,
"type":dog_type,
"bark":bark
}
return data

def person(name,age,sex,job):
def run(p):
print("person %s is running...."%p['name'])
data={"name":name,
"age":age,
"sex":sex,
"job":job}
return data

d1=dog("豆豆","京巴")
p1=person("王道",33,"F","混混")
p2=person("王渣",33,"F","混混头领")

print(d1'bark')

面向过程编程

面向过程又被称为top-down languages, 就是程序从上到下一步步执行,一步步从上到下,从头到尾的解决问题 。基本设计思路就是程序一开始是要着手解决一个大的问题,然后把一个大问题分解成很多个小问题或子过程,这些子过程再执行的过程再继续分解直到小问题足够简单到可以在一个小步骤范围内解决。这样做的问题也是显而易见的,就是如果你要对程序进行修改,对你修改的那部分有依赖的各个部分你都也要跟着修改, 举个例子,如果程序开头你设置了一个变量值 为1 , 但如果其它子过程依赖这个值 为1的变量才能正常行,那如果你改了这个变量,那这个子过程你也要修改,假如又有一个其它子程序依赖这个子过程 , 那就会发生一连串的影响,随着程序越来越大, 这种编程方式的维护难度会越来越高。所以我们一般认为, 如果你只是写一些简单的脚本,去做一些一次性任务,用面向过程的方式是极好的,但如果你要处理的任务是复杂的,且需要不断迭代和维护的, 那还是用面向对象最方便了。

def db_conn():
print("connecting db...")

def db_backup(dbname):
print("导出数据库...", dbname)
print("将备份文件打包,移至相应目录...")

def db_backup_test():
print("将备份文件导入测试库,看导入是否成功")

def main():
db_conn()
db_backup('my_db')
db_backup_test()

if name == 'main':
main()

类的特性

封装

1.防止数据被随意修改。
2.是外部程序不需要关注对象内部的构造,只需要通过此对象对外
提供的接口进行直接访问即可

继承

通过父类-》子类的方式以最小代码量的方式实现不同角色的共同点和不同点的同时存在

多态

  比如都是人类,都能说话,但是不同的人说话方式不一样。一个说话接口,多种实现方式。中国人说中文,美国人说英语。

相关内容

热门资讯

智能周报|AI自进化进程已开启 来源:第一财经YiMagazine 模型与应用 微信开放AI生态接入,可自动化微信生态内的小程序 6...
充电枪模式二双工位测试设备厂家... 导语:新能源充电设备测试环节中,模式二充电枪功能测试需兼顾效率与精度,尤其在高产能产线中,双工位测试...
三星罢工的全球回响 5月27日上午,一场牵动全球半导体神经的投票落下帷幕。 据央视新闻报道,三星电子内部投票结果于当天公...
原创 曾... “宁王”为何总与同行打官司? 作者 | 于婞 武丽娟 编辑丨高岩 来源 | 野马财经 宁德时代(30...
英格兰队世界杯1.8万装备失窃... 6 月 15 日消息,本届美加墨世界杯开打前夕,作为夺冠热门的英格兰队意外遭遇一桩离谱盗窃案,全队跨...
有毒的“养生烟”:电商热销宣称... 澎湃新闻记者 王鑫到底是卷烟?还是保健品?宣称不含尼古丁,内含艾草及人参、虫草、藏红花等多种中草药,...
智能焊接机器人设备系统投用 这两天,在海油工程天津智能化制造基地,企业自主研发的智能焊接机器人设备系统正式投用。 这套系统,专为...
马克龙:法英牵头的霍尔木兹海峡... △法国总统马克龙(资料图)法国总统马克龙15日在社交媒体上发文,欢迎美国和伊朗达成谅解备忘录,并表示...
中东冲突考验“过于严峻”,印度... 【人民日报记者 苑基荣】油价、化肥成本上涨以及与中东冲突相关的供应中断,给印度的经济前景蒙上阴影。《...