instance-variables相关内容
我有一个Ruby类.我想从该类的参数获取实例变量.我可以将所有实例变量作为数组获取: self.instance_variables 但是,我想获取名为arg的实例变量,具体是: class MyClass def get_instance_variable(arg) hash_of_instance_variables[arg] end end object.g
..
我有一个定义了两个动作的rails控制器:index和show. 我在index操作中定义了一个实例变量.代码如下所示: def index @some_instance_variable = foo end def show # some code end 如何访问show.html.erb模板中的@some_instance_variable? 解决方案 除非要通过
..
如果实例变量属于一个类,是否可以使用类实例直接访问该实例变量(例如@hello)? class Hello def method1 @hello = "pavan" end end h = Hello.new puts h.method1 解决方案 是的,您可以像这样使用instance_variable_get: class Hello def metho
..
谁能解释通过self.attribute和@attribute访问实例属性之间的区别? 解决方案 self.attribute调用方法attribute. self.attribute = value使用参数value调用方法attribute=. @attribute和@attribute = value获取/设置实例变量@attribute的值. 所以基本上它们是两个完全不同
..
我有一个类似下面的类,并且我使用实例变量(数组)来避免使用很多方法参数. 它能按我的预期工作,但这是一个好习惯吗? 实际上,我不希望这样能起作用,但是我想类方法不能像其他语言中的静态方法一样起作用. class DummyClass def self.dummy_method1 @arr = [] # Play with that array end de
..
有没有办法在ruby中使实例变量“私有"(C ++或Java定义)?换句话说,我想要以下代码导致错误. class Base def initialize() @x = 10 end end class Derived
..
class Hello @hello = "hello" def display puts @hello end end h = Hello.new h.display 我创建了上面的类.它不会打印任何内容.我以为实例变量@hello是在类声明期间设置的.但是,当我调用display方法时,输出为"nil".正确的方法是什么? 解决方案 在初次学习Ru
..
请原谅新手问题,但为什么@game_score总是为零? #bowling.rb class Bowling @game_score = 0 def hit(pins) @game_score = @game_score + pins end def score @game_score end end 解决方案 让
..
在符号(@@)前面加双的Ruby变量是什么?我对以at符号开头的变量的理解是,它是一个实例变量,如PHP中这样: PHP版本 class Person { public $name; public function setName($name) { $this->name = $name; } public function get
..
这是一些代码: class Person def initialize(age) @age = age end def age @age end def age_difference_with(other_person) (self.age - other_person.age).abs end protected :age end
..
我使用@property来确保对对象实例变量的更改由我需要的方法包装. 当实例具有逻辑上不应更改的变量时,该怎么办?例如,如果我要为Process创建类,则每个Process实例应具有一个PID属性,该属性将经常访问但不应更改. 处理试图修改该实例变量的人的最Pythonic方式是什么? 仅信任用户不要尝试更改 他们不应该的东西吗? 使用属性,但引发一个 如果实例变量是 变
..
我想知道属性是在对象初始化期间自动设置为nil还是具有随机值? 解决方案 如果这个问题指示了Objective-C,我想说的是在声明变量时应初始化变量的 all 值. 在声明变量时显式初始化变量有两个好处: 变量的值没有任何歧义. 其他读取您的代码的可读性.
..
我正在尝试将实例变量和实例变量初始化为数组,如下所示: class Arch
..
我很好奇,无论如何在init方法内部调用一个方法来设置类的实例属性.本质上,我只是有一个类对UIView进行了子类化,并在init中添加了一些子视图,而其中一些子视图是该类的实例变量. class MyView: UIView { var collectionView: UICollectionView convenience init () { self.
..
在"ruby编程语言"一书的第7.3.5节“继承和实例变量"中说: 因为实例变量与之无关 继承,子类使用的实例变量不能“阴影" 超类中的实例变量.如果子类使用相同的实例变量 名称作为其祖先之一使用的变量,它将覆盖其祖先的值 多变的.可以有意进行此操作以更改祖先的行为,或者可以 不经意间做.在后一种情况下,几乎可以确定会导致错误.与 先前描述的私有方法的继承,这是为什么它只是唯一的另一个原
..
在标头中声明私有实例变量与在实现中声明私有实例变量之间是否有区别? 在TestObj.h @interface TestObj : NSObject { int test; } @end vs在TestObj.m @interface TestObj() { int test; } @end 这两者都与我等效,如果不优选,则在标头中声明实例变量与在实现中声
..
由于我对Rails的了解以及如何在模型之间使用变量,这可能是一个错误,因此,如果需要更多代码来回答它或者我的术语不正确,请告诉我,我很乐意更新问题. 我提供了一些我希望用户能够“喜欢"的帖子.尽管以下代码允许按喜欢在单个帖子的页面-site.com:3000/posts/*post.id*上工作-传递的表单数据为like[liked_post_id]:*post.id*,但是当我尝试在个人资
..
我正在重写对象的相等方法。假设里程表将km变量存储为双精度(以及对于该示例不重要的其他变量)。 public里程表{私人双公里 ; @Override public int hashCode(){ final int prime = 31; int结果= 1; 长期温度; temp = Double.doubleToLongBits(km); 结果=素数*结果+(
..
Scala语言要求您在使用实例变量之前对其进行初始化。但是,Scala不会为您的变量提供默认值。相反,您必须使用通配符下划线手动设置其值,该通配符下划线的作用类似于默认值,如下所示: var名称:字符串= _ 我知道,我知道...我可以在类中定义构造函数定义,它以我们的实例变量作为参数,因此Scala不会如下所示强制其初始化 class Person(变量名:字
..
不确定类型提示实例变量的Python约定-我一直在 __ init __ 构造函数自变量中进行操作,如下所示: class LoggedVar(Generic [T]): def __init __(自身,值:T,名称:str,记录器:Logger)->无: self.name =名称 self.logger =记录器 self.value =值` 链接到上述代码段
..