博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(七)扩充类
阅读量:6093 次
发布时间:2019-06-20

本文共 822 字,大约阅读时间需要 2 分钟。

下面讲如何修改String这个ruby官方的类,因为我们没办法去继承ruby官方类,这就用到扩充类。在此之前先讲解如何给已经定义好的类添加新的方法。

逗号写错改过来即可    a=Student.new("张三",23,"男")

class Student

  Version="1.0.0"
  attr_accessor :name
  attr_reader :no
  attr_writer :gender

  def initialize(name,no,gender)

    @name=name
    @no=no
    @gender=gender
  end

  def sayHi

    puts "我叫#{
@name},学号是#{
@no}"                                

  end

  

  def self.test

    return "小名"

  end

end
class Student
  def
bye
    p "hello"

    p "再见"

    puts "再见"
  end

end

a=Student.new("张三",23,"男")
a.sayHi
a.bye

 

从上面可知,直接再写一次类就能扩充该类的方法,因此给String类扩充两个方法并且覆盖原有name方法

puts  String.name #调用未被修改前String的name方法 class String   def self.one     puts "小s"   end   def two     puts "2是two"   end   def self.name     puts "字符串类"   end end a=String.new("ceshi") a.two String.one String.name

转载于:https://www.cnblogs.com/blueColdFire/p/5164153.html

你可能感兴趣的文章
DataTable - the existing record can not be merged,just be added
查看>>
Html5最简单的游戏Demo——Canvas绘图的骰子
查看>>
-bash: mysql: command not found 解决办法
查看>>
MySQL密码过期策略
查看>>
UMDF
查看>>
[置顶] CSS禅意花园——CSS设计的绝美境界
查看>>
Git总结
查看>>
7-21测试
查看>>
Microsoft Accelerator for Windows Azure给我们的启示,由 TechStars 撰写
查看>>
学号:201621123032 《Java程序设计》第11周学习总结
查看>>
Access数据库datetime查询问题
查看>>
php数组函数
查看>>
HTML5 中canvas支持触摸屏的签名面板
查看>>
.net开源后可以查看的源代码
查看>>
easyui datagrid自定义按钮列,即最后面的操作列
查看>>
数据结构队列链表实现
查看>>
iOS CoreData 开发
查看>>
bzoj千题计划242:bzoj4034: [HAOI2015]树上操作
查看>>
自动化测试学习
查看>>
配置PL/SQL Developer连接Oracle数据库
查看>>