当前位置: 首页 > news >正文

百度最容易收录的网站做网站好公司有哪些

百度最容易收录的网站,做网站好公司有哪些,网站首页标题,wordpress后台加统计代码在OOP程序设计中#xff0c;当我们定义一个class的时候#xff0c;可以从某个现有的class继承#xff0c;新的class称为子类#xff08;Subclass#xff09;#xff0c;而被继承的class称为基类、父类或超类#xff08;Base class、Super class#xff09;。 编写一个名… 在OOP程序设计中当我们定义一个class的时候可以从某个现有的class继承新的class称为子类Subclass而被继承的class称为基类、父类或超类Base class、Super class。 编写一个名为 Animal 的class有一个 run 方法可以直接打印 1 2 3  class Animal(object):      def run(self):           print(Animal is running...) 当我们需要编写Dog和Cat类时就可以直接从Animal类继承 1 2 3 4 5  class Dog(Animal):      pass  class Cat(Animal):      pass 对于Dog来说Animal就是它的父类对于Animal来说Dog就是它的子类。cat和Dog类似。 集成有什么好处最大的好处是子类获得了父类的全部功能。由于Animal实现了run方法因此Dog和Cat作为它的子类什么事也没干就自动拥有了run方法 1 2 3 4 5 6 7  dog  Dog()  dog.run() Animal is running...  cat  Cat()  cat.run() Animal is running... 也可以对子类增加一些方法比如Dog类 1 2 3 4 5  class Dog(Animal):      def run(self):           print(Dog is running...)      def eat(self):           print(Eating meat...) 继承的第二个好处需要我们对代码做一点改进对于Dog和Cat调用run 的时候显示的都是 Animal is running...  符合逻辑的做法分别显示  Dog is running...和Cat is running...因此对Dog和Cat类改进如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14  class Dog(Animal):      def run(self):           print(Dog is running...)  class Cat(Animal):      def run(self):           print(Cat is running...)  dogDog()  dog.run() Dog is running...  catCat()  cat.run() Cat is running... 当子类和父类都存在相同的run方法时我们说。子类的run覆盖了父类的run再代码运行的时候总是会调用子类的run。这样我们就获得了继承的另一个好处多态 要理解什么是多态我们首先要对数据类型再作一点说明。当我们定义一个class的时候我们实际上就定义了一种数据类型。我们定义的数据类型和Python自带的数据类型比如str、list、dict没什么两样 1 2 3 4 5 6 7 8 9 10 11 12  isinstance(a,list) True  isinstance(b,Animal) True  isinstance(c,Dog) True #再看一个  isinstance(c,Animal) True #看来c不仅仅是Dog,c还是Animal 因为Dog是从Animal继承下来的当我们创建了一个Dog的实例c时我们认为c的数据类型是Dog没错但c同时也是Animal也没错Dog本来就是Animal的一种 所以在继承关系中如果一个实例的数据类型是某个子类那它的数据类型也可以被看做是父类。但是反过来就不行 1 2 3  b  Animal()  isinstance(b,Dog) False Dog可以看成Animal但Animal不可以看成Dog。 要理解多态的好处我们还需要再编写一个函数这个函数接受一个Animal类型的变量 1 2 3 4 5 6 7 8 9 10 11 12 13 def run_twice(animal):     animal.run()     animal.run()  run_twice(Animal()) Animal is running... Animal is running...  run_twice(Dog()) Dog is running... Dog is running...  run_twice(Cat()) Cat is running... Cat is running... 看上去没啥意思但是仔细想想现在如果我们再定义一个Tortoise类型也从Animal派生 1 2 3 4 5 6 7 8 class Tortoise(Animal):     def run(self):         print(Tortoise is running slowly...) #当我们调用run_twice()时传入Tortoise的实例  run_twice(Tortoise()) Tortoise is running slowly... Tortoise is running slowly... 你会发现新增一个Animal的子类不必对run_twice()做任何修改实际上任何依赖Animal作为参数的函数或者方法都可以不加修改地正常运行原因就在于多态。 多态的好处就是当我们需要传入Dog、Cat、Tortoise……时我们只需要接收Animal类型就可以了因为Dog、Cat、Tortoise……都是Animal类型然后按照Animal类型进行操作即可。由于Animal类型有run()方法因此传入的任意类型只要是Animal类或者子类就会自动调用实际类型的run()方法这就是多态的意思 对于一个变量我们只需要知道它是Animal类型无需确切地知道它的子类型就可以放心地调用run()方法而具体调用的run()方法是作用在Animal、Dog、Cat还是Tortoise对象上由运行时该对象的确切类型决定这就是多态真正的威力调用方只管调用不管细节而当我们新增一种Animal的子类时只要确保run()方法编写正确不用管原来的代码是如何调用的。这就是著名的“开闭”原则 对扩展开放允许新增Animal子类 对修改封闭不需要修改依赖Animal类型的run_twice()等函数。 本文转自 nw01f 51CTO博客原文链接http://blog.51cto.com/dearch/1764522如需转载请自行联系原作者
http://wiki.neutronadmin.com/news/117514/

相关文章:

  • 福州服务类网站建设快站淘客中转页
  • 广州外贸网站制作营销型网站的三元素
  • 西部数码做的网站打不开网站动态静态
  • 分析可口可乐网站建设的目的电费公众号开发
  • 网站开发进度安排专门找图片的网站
  • 河津市城乡建设局网站wordpress 获取标签
  • 广东建设厅网站查询百度快照 网站描述 更新
  • 百度打开wordpress seo插件哪个好
  • 雅安市建设网站基金从业培训网站
  • 网站500微信平台开发公司成都
  • 网站建设是前端的吗凡科快图在线制作免费官网下载
  • 学网站建设需要什么网站制作实验报告
  • 新网站如何被网站收录永久免费的仓库
  • 网站备案 暂住证介绍公司的网站有哪些
  • 苏州外贸网站制作网页设计规范文档
  • 北京哪里有教怎么做网站的买外贸衣服的网站
  • 企业网站制作比较好的阿里巴巴网站建设论文
  • 工信部网站备案验证码动漫建模需要学什么软件
  • 千图网网站怎么做wordpress 图文展示
  • 惠安网站建设费用厦门造价工程信息网
  • 杭州网站建站推广宝山企业做网站
  • 网站备案信息更改手机装修设计图制作软件
  • 婚恋网站开发背景文献番禺人才网招聘网官网
  • 建设工程安全管理网站网页设计与制作实训报告1500字
  • 外贸做企业什么网站建设广州骏域网站建设专家 V
  • ssh框架做音乐网站网站标题写什么作用是什么意思
  • 食品网站建设风格wordpress chastity
  • 灵犀科技高端网站建设天津网络排名优化
  • 深圳企业官网网站建设天津网站建设哪个好
  • 设计教程网站程序开发用什么笔记本