102.继承案例一
Posted kangwenju
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了102.继承案例一相关的知识,希望对你有一定的参考价值。
继承案例一
我们像要编写一个网站,网站只有三个页面,首页,新闻页,产品展示页,我们可能进行如下实现
1.首页
#首页 class HomePage(object): #头部信息 def header(self): print("头部信息!") #底部信息 def footer(self): print("底部信息!") #主体部分 def body(self): print("首页主体部分内容")
2.新闻页
#新闻页 class NewsPage(object): #头部信息 def header(self): print("头部信息!") #底部信息 def footer(self): print("底部信息!") #主体部分 def body(self): print("新闻页主体部分内容")
3.产品页
#产品页 class ProductPage(object): #头部信息 def header(self): print("头部信息!") #底部信息 def footer(self): print("底部信息!") #主体部分 def body(self): print("产品页主体部分内容")
以上实现,我们可以发现,三个页面,除了主体部分不同之外,那么头部和底部信息是完全一致的,但是三个页面我们需要写上相同的代码,当我的头部和底部发生改变的时候,那么就需要每个页面都要更改,维护量和维护难度就增加不少。假如网站有10000个页面,那么这个维护量是灾难性的重复劳动。
如何解决呢?我们可以将公共部分剥离出去,单独写一个类,让其他页面继承这个公共页面.
#公共部分 class BasePage(object): #头部信息 def header(self): print("头部信息!") #底部信息 def footer(self): print("底部信息!") #首页 class HomePage(CommonPage): #主体部分 def body(self): print("首页主体部分内容") #新闻页 class NewsPage(CommonPage): #主体部分 def body(self): print("新闻页主体部分内容") #产品页 class ProductPage(CommonPage): #主体部分 def body(self): print("产品页主体部分内容")
例子:
# 自定义一个基类 class BasePage(object): # 头部 def header(self): print("新年头部") # 底部 def footer(self): print("新年底部") # 自定义一个首页类 class HomePage(BasePage): # 中间部分 def boby(self): print("首页中间部分") # 自定义一个新闻页 class NewsPage(BasePage): # 中间部分 def boby(self): print("新闻中间部分") # 自定义一个产品页 class ProductPage(BasePage): # 中间部分 def boby(self): print("产品中间部分") pp = ProductPage() pp.header() pp.boby() pp.footer()
以上是关于102.继承案例一的主要内容,如果未能解决你的问题,请参考以下文章