에서 나는 우리가 자기 참조 생성자의이 종류가 있습니까이 자바는 초기화 루비
public constructor_name() {
this(param)
}
public constructor_name(int param) {
this.param = param
}
어떤 루비에 대해이하는 데 사용?
에서 나는 우리가 자기 참조 생성자의이 종류가 있습니까이 자바는 초기화 루비
public constructor_name() {
this(param)
}
public constructor_name(int param) {
this.param = param
}
어떤 루비에 대해이하는 데 사용?
Java가 유효하지는 않지만 선택 사항 인 인수를 원한다고 생각합니다. 이 경우, 당신도 바로 인수를 기본 값
def initialize(param=9999)
...
end
을 줄 수 또는 당신은 플랫 인수 사용할 수 있습니다 루비는 동적 언어이기 때문에
def initialize(*params)
param = params.pop || 9999
end
, 당신은 여러 생성자를 가질 수 없습니다를 (또는 해당 문제에 대해 생성자 체인을 수행하십시오). 예를 들어, 다음 코드에서 :
class A
def initialize(one)
puts "constructor called with one argument"
end
def initialize(one,two)
puts "constructor called with two arguments"
end
end
매개 변수가 다른 2 개의 생성자가 있어야합니다. 그러나 마지막으로 평가 된 클래스의 생성자가됩니다. 이 경우 initialize(one,two)
입니다.
또한 'hash named arguments'를 사용할 수 있습니다. – rogerdpack