首页
学习
活动
专区
工具
TVP
发布
技术百科首页 >Ruby语言 >Ruby中的继承和多态是什么?

Ruby中的继承和多态是什么?

词条归属:Ruby语言

Ruby是一种面向对象的语言,继承和多态是面向对象编程的两个重要概念。

继承是指在一个类的基础上创建一个新的类,并且新的类可以继承原有类的属性和方法。Ruby中使用 < 符号表示继承关系。例如:

代码语言:javascript
复制
class Animal
  def move
    puts "I can move"
  end
end

class Dog < Animal
  def bark
    puts "Woof!"
  end
end

在上面的代码中,Dog 类继承自 Animal 类,因此可以使用 Animal 类中定义的 move 方法。同时,Dog 类也可以定义自己的方法,例如 bark 方法。

多态是指同一个方法可以根据不同的对象产生不同的行为。在Ruby中,多态通过方法的重写来实现。例如:

代码语言:javascript
复制
class Animal
  def move
    puts "I can move"
  end
end

class Dog < Animal
  def move
    puts "I can run fast"
  end
end

class Fish < Animal
  def move
    puts "I can swim fast"
  end
end

在上面的代码中,Animal 类定义了 move 方法,而 Dog 类和 Fish 类分别重写了 move 方法,产生了不同的行为。当调用 move 方法时,会根据对象的实际类型产生不同的行为。

相关文章
盘点Python中的继承和多态
继承是一种创建新的类的方式,新创建的叫子类,继承的叫父类、超类、基类。继承的特点就是子类可以使用父类的属性(特征、技能)。继承是类与类之间的关系。
Python进阶者
2021-08-20
6930
盘点Python中的继承和多态
继承是一种创建新的类的方式,新创建的叫子类,继承的叫父类、超类、基类。继承的特点就是子类可以使用父类的属性(特征、技能)。继承是类与类之间的关系。
Go进阶者
2021-08-25
9660
继承和多态
在OOP程序设计中,当定义一个class的时候,可从某个现有的class继承 新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class) 格式:
py3study
2020-01-15
3880
继承和多态
刚才我们提到了,可以在已有类的基础上创建新类,这其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来,从而减少重复代码的编写。提供继承信息的我们称之为父类,也叫超类或基类;得到继承信息的我们称之为子类,也叫派生类或衍生类。子类除了继承父类提供的属性和方法,还可以定义自己特有的属性和方法,所以子类比父类拥有的更多的能力,在实际开发中,我们经常会用子类对象去替换掉一个父类对象,这是面向对象编程中一个常见的行为,对应的原则称之为里氏替换原则。下面我们先看一个继承的例子。
用户8442333
2021-05-19
4240
继承和多态
这里继承和多态的概念与java的概念差不多。概念还是需要多次理解才能透彻。感觉类和实例的概念还是不能深刻理解。再次复习下吧。
一点儿也不潇洒
2018-08-02
3660
点击加载更多
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
领券