开源编程语言Ruby以其清晰的语法和易用性而闻名。这并不意味着您不会偶尔遇到错误消息。最令人烦恼的是NameError Uninitialized常量异常,因为它有多个原因。异常的语法遵循以下格式:
NameError: uninitialized constant Something或
NameError: uninitialized constant Object::Something(不同的类名代替某物)
未初始化常量错误是常规NameError异常类的变体。它有几个可能的原因。
要对代码进行故障排除,请逐个检查上面列出的可能原因。如果发现问题,请解决它。例如,检查代码,查找变量和类的大小写用法是否存在差异。如果你找到一个并改正它,你的问题可能就解决了。如果不是,请继续查找其他可能的原因,并在执行过程中进行修复。
如果代码中引用的类位于另一个模块中,请使用其全名如下所示引用它:
#!/usr/bin/env rubymodule MyModule class MyClass; endendc = MyModule::MyClass.new例外情况是Ruby如何让您注意代码中的问题。当代码中遇到错误时,将“引发”或“引发”异常,并且默认情况下程序将关闭。
Ruby发布带有预定义类的异常层次结构。NameErrors与RuntimeError、ThreadError、RangeError、ArgumentError等一起位于StandardError类中。这个类包括在典型Ruby程序中遇到的大多数正常异常。
...后面,可以将该变量值更改为其他值。声明为final并用值初始化的变量以后不能在程序中更改。 图03:带有最终变量和继承的程序 根据上述程序,x是最终变量。它被赋值为5。不能更改其他值,因为它被声明为final。Java支持面向...
... 没有未定义或未初始化的变量。 没有数组越界错误。 没有整数溢出错误。 nil(null)值的显式处理。 自动内存管理。 ...
...能用于字段,不能用于局部变量。只读字段可以在声明时初始化,也可以在同一类的构造函数中初始化,因此根据所使用的构造函数,程序的不同执行的值可能不同。readonly关键字指定对象的实例变量是不可修改的,并且在声明...
...能更改(override)。静态值设置为其默认值,但可以重新初始化。 最终与静态:对比图 总结 - 期末考试(of final) vs. 静止的(static) 即使没有对象(实例),键work static也提供访问。突出的类是通过关键字static声明的。如果您不希...
C语言中常量和变量的主要区别在于常量与变量相似,但是一旦定义了变量,程序就不能修改它,而变量是一个保存数据的内存位置。 C是由dennisritchie开发的结构化编程语言。它有各种编程结构,如循环、函数和指针。定义常量...
...changeValue()不能为pi赋值。相反,程序员可以在声明时初始化变量,如下所示。 只读双pi=3.14; 此外,readonly只能在类级别声明,而不能在方法内部声明。 常数(c***tant)和只读(readonly)的区别 定义 常量是指在C#编程中不可更改的...
...,这解释了静态和最终的根本区别。 变量 虽然可以再次初始化静态变量,但不能再次初始化最终变量。这是静态和最终的主要区别。 方法 静态方法可以被其他静态方法调用,并且只能访问类的静态成员。另一方面,final方法不...
...组成部分。没有它,所有的数学都会变得模糊和不清楚。常量(c***tants) vs. 变量(variables)常量和变量的区别在于常量不会改变它们的值,它们的值是固定的。而变量的值根据方程的不同而频繁变化。常数和变量在计算机科学和数学...
...需限定。 实例常量和静态常量都是可能的。静态和实例初始化程序代码也可以计算常量。 第三方便利 接口实现可以添加到任何现有的第三方类中。 必须重写第三方类以仅从抽象类扩展。 能做还是能做 接口通常用来描述类...
...分:单元头、接口部分、实现部分。还有两个可选部分:初始化和终结。 正如您将看到的,单元必须采用预定义的格式,以便编译器能够读取它们并编译单元代码。 单元头以保留字unit开头,后跟单元名称。当我们在另一个...