2012-03-10 5 views
0

나는 Time 클래스가 새로운 Time 객체를 인스턴스화하는 다른 메소드를 가지고있는 것을 알고있다. Time을 호출하는 것의 차이점은 무엇인가? new 또는 .local 또는 mktime ??루비의 Time.new (년, 월, 일)과 Time.local (년, 월, 일)의 차이점

서로 다른 이름으로 동일한 구현을 공유합니까?

나는 새로운 생성자 방법이 .local의 같은 ​​기본 다른 방법으로 전무로 설정 선택적 매개 변수로 표현하고 mktime은 당신이 가질 수 없습니다 때문마다 다른 기호 에 대한 과부하이 인이되는 시간에 대한 루비 문서에 참조

루비의 생성자에 과부하가 있습니까?

답변

0

Time.mktimeTime.local의 동의어이며 사용자가 지정한 값을 기반으로 시간을 생성합니다. Time.new은 시스템의 시간 값을 사용하여 개체를 만듭니다.

은 꽤 유용 할 this을 발견

Time.new은 -> ATIME 현재 시스템 시간으로 초기화 된 Time 객체를 돌려줍니다. 참고 : 생성 된 개체는 시스템 클록에서 사용 가능한 해상도를 사용하여 만들어 지므로 분 초가 포함될 수 있습니다.

Time.gm (년, 월, 일, 분, 초, usec) -> a 시간 Time.gm (초, 분, 요일, 월, 일, tz) -> aTime UTC (GMT)로 해석되는 주어진 값을 기반으로 시간을 생성합니다. 연도를 지정해야합니다. 해당 필드에 대한 다른 값의 기본값은 최소값 입니다 (nil이거나 생략 될 수 있음). 달은 숫자 (1 - 12) 또는 3 자 영어 월 이름으로 지정 될 수 있습니다. 시간은 24 시간제 (0..23)로 지정됩니다. 값이 범위를 벗어날 경우 ArgumentError를 발생시킵니다. 또한 시간 # to_a에 의해 출력 된 순서대로 인수 개를 허용합니다. Time.local (년, 월, 일,시, 분, 초) -> aTime Time.local (초, 분,시, 일, 월, 일, 일, 요일, 요일, 요일, 요일, 요일) -> aTime Time.gm과 같으나 현지 표준 시간대의 값을 해석합니다.

Time.mktime (년, 월, 일,시, 분, 초) -> aTime Time.local에 대해 동의어 .

관련 문제