gpt4 book ai didi

ruby 继承 概念

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章ruby 继承 概念由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

在日常生活中,我们对一切对象的分类都是有一定层次的.我们知道所有的猫都是哺乳动物,而所有的哺乳动物又都是动物.小型的类从更大的 。

类中继承它们的属性.如果一切的哺乳动物要呼吸,那么猫也要呼吸. 。

在Ruby里,我们可以这样表述这一概念

ruby>classMammal 。

|defbreathe 。

|print"inhaleandexhale\n" 。

|end 。

|end 。

nil 。

ruby>classCat 。

|defspeak 。

|print"Meow\n" 。

|end 。

|end 。

nil 。

虽然我们并未指明一只猫要怎样呼吸,但因为Cat是定义为Mammal的子类的(在OO术语里,较小的类叫子类,相比较大的类称父类),每一只猫都将继承来自于Mammal类的行为.因此从程序员的角度出发,猫天生就拥有呼吸这一能力;当我们加上speak方法后,我们的猫就能呼吸,也可以发声了. 。

ruby>tama=Cat.new 。

# 。

ruby>tama.breathe 。

inhaleandexhale 。

nil 。

ruby>tama.speak 。

Meow 。

nil 。

也会遇到这样的情况:父类的某些属性不可以被某一特定的子类继承.虽然一般鸟类都会飞,但企鹅是鸟类中不会飞的一个子类. 。

ruby>classBird 。

|defpreen 。

|print"Iamcleaningmyfeathers." 。

|end 。

|deffly 。

|print"Iamflying." 。

|end 。

|end 。

nil 。

ruby>classPenguin 。

|deffly 。

|fail"Sorry.I'dratherswim." 。

|end 。

|end 。

nil 。

抛开脑尽力疲地为每一个新类定义属性,我们只需要新增或重定义子类和父类之间的区别.继承的这一用法有时也叫做特点编程(differentialprogramming).这是面向对象编程的又一好处. 。

最后此篇关于ruby 继承 概念的文章就讲到这里了,如果你想了解更多关于ruby 继承 概念的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
文章推荐: 剖析 Ruby 访问控制
文章推荐: ruby 重载方法 详解
文章推荐: 分析 ruby 类
文章推荐: rudy 方法 分析
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com