相关疑难解决方法(0)

ruby方法名称的大写和小写规则是什么?

我是Ruby初学者.从本书中,我知道Ruby方法名称应该以小写字母或下划线开头.但我发现了不同的场景:

  1. 如果在类外部定义了一个方法,它只能以小写字母开头,如果你试图定义一个以大写字母开头的方法,Ruby会抱怨错误,例如:

    define sayHi
      puts "Hello" 
    end
    sayHi   # => Hello
    
    Run Code Online (Sandbox Code Playgroud)

    但是,以下代码不起作用:

    define SayHi
      puts "Hello" 
    end
    SayHi 
    
    Run Code Online (Sandbox Code Playgroud)

    它会产生错误:

    :in `<main>': uninitialized constant SayHi (NameError)
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果在类中定义了一个方法,那么它可以以大写字母开头:

    class Test
      def SayHi
        puts "hello" 
      end
    end
    t = Test.new
    t.SayHi    # => hello
    
    Run Code Online (Sandbox Code Playgroud)

有谁知道为什么#1在#2工作时不起作用?ruby方法名称的确切规则是什么?

ruby

16
推荐指数
1
解决办法
5419
查看次数

标签 统计

ruby ×1