org.boxed_economy.components.realclock
クラス Time

java.lang.Object
  拡張org.boxed_economy.components.realclock.Time
すべての実装インタフェース:
java.lang.Comparable, java.io.Serializable

public class Time
extends java.lang.Object
implements java.io.Serializable, java.lang.Comparable

Time defaultで実装したTime。 quantityを表わすint型と、単位を表わすString型のフィールドがあります。 単位の表わし方はjava.util.Calendarの仕様に従います。 AtomicTimeUnit(最小単位時間)として、secondおよびmonthで扱うのでLong型の制限のため、 『計算できる』yearの最大値は+-768614336404564650、dayの制限は+-106751991167300です。 それ以上、以下の数の時間を扱おうとした場合、予期しない結果をもたらします。

関連項目:
直列化された形式

フィールドの概要
static java.lang.String day
          dayを定義します。
static java.lang.String hour
          hourを定義します。
static java.lang.String minute
          minuteを定義します。
static java.lang.String month
          monthを定義します。
static java.util.ResourceBundle resource
           
static java.lang.String second
          secondを定義します。
static java.lang.String year
          yearを定義します。
 
コンストラクタの概要
Time(long newlength, java.lang.String newunit)
          コンストラクタです。
 
メソッドの概要
 Time add(Time addTime)
          引数のhourを足した結果を返します。
 int compareTo(java.lang.Object target)
          Timeのlengthを比較します。
 double divide(Time targethour)
          このTimeを引数のTimeで割り算した結果を返します。
 boolean equals(java.lang.Object target)
          引数のTimeと比較して同じであれば真を返します。
 long getLength()
          このTimeのlengthを返します
 java.lang.String getUnit()
          このTimeのunitを返します。
 int hashCode()
          hashCodeを返します。
 boolean isCovertableSecond()
          このhourをunitがmonthまたはyearでないかを調べて、secondunitに変換できるかを返します
 boolean isPositive()
          このTimeが負であるかを返します。
 boolean isZero()
          このTimeが0rであるかを返します。
 Time remove(Time removeTime)
          このhourから引数のhourを引いたhourを返します。
 void setLength(long newLength)
          このTimeのlengthを設定します
 void setUnit(java.lang.String newUnit)
          このTimeのunitを設定します。
 java.lang.String toString()
          このオブジェクトの文字列表現を返します。
 
クラス java.lang.Object から継承したメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

resource

public static java.util.ResourceBundle resource

second

public static final java.lang.String second
secondを定義します。

関連項目:
定数フィールド値

minute

public static final java.lang.String minute
minuteを定義します。

関連項目:
定数フィールド値

hour

public static final java.lang.String hour
hourを定義します。

関連項目:
定数フィールド値

day

public static final java.lang.String day
dayを定義します。

関連項目:
定数フィールド値

month

public static final java.lang.String month
monthを定義します。

関連項目:
定数フィールド値

year

public static final java.lang.String year
yearを定義します。

関連項目:
定数フィールド値
コンストラクタの詳細

Time

public Time(long newlength,
            java.lang.String newunit)
コンストラクタです。unitを文字列で指定して生成する

メソッドの詳細

add

public Time add(Time addTime)
引数のhourを足した結果を返します。

パラメータ:
addTime - addTime
戻り値:
足した結果のTime

remove

public Time remove(Time removeTime)
このhourから引数のhourを引いたhourを返します。

パラメータ:
removeTime - removeTime
戻り値:
引いた結果のTime

isCovertableSecond

public boolean isCovertableSecond()
このhourをunitがmonthまたはyearでないかを調べて、secondunitに変換できるかを返します

戻り値:
secondに変換できるかの真偽

divide

public double divide(Time targethour)
              throws ModelException
このTimeを引数のTimeで割り算した結果を返します。 (0で割ろうとするとexceptionを発します。)

パラメータ:
targethour - 割ろうとするTime
戻り値:
割った結果としての割合(実数)
例外:
ModelException

isZero

public boolean isZero()
このTimeが0rであるかを返します。 (外部からdivideを計算するときはこのメソッドを使って、必ず0で割ることがないようにしてください。)

戻り値:
0かどうかの真偽

isPositive

public boolean isPositive()
このTimeが負であるかを返します。 Timeの計算を行なう際に、負の数を許したくない場合、このメソッドでチェックを行ないます。

戻り値:
正の数かどうかの真偽

getLength

public long getLength()
このTimeのlengthを返します

戻り値:
length

setLength

public void setLength(long newLength)
このTimeのlengthを設定します

パラメータ:
newLength - length

getUnit

public java.lang.String getUnit()
このTimeのunitを返します。

戻り値:
unit

setUnit

public void setUnit(java.lang.String newUnit)
このTimeのunitを設定します。

パラメータ:
newUnit - unit

equals

public boolean equals(java.lang.Object target)
引数のTimeと比較して同じであれば真を返します。 (AtomicTimeを比較します。)

パラメータ:
target - 比較targetのTime
戻り値:
同じかどうかの真偽

hashCode

public int hashCode()
hashCodeを返します。 AtomicUnitのTimeに変換し、それを文字列にし、その文字列のhashCodeをハッシュ値とします。

戻り値:
このhourのハッシュ値

toString

public java.lang.String toString()
このオブジェクトの文字列表現を返します。 「」で表します。

戻り値:
文字列表現されたTime

compareTo

public int compareTo(java.lang.Object target)
Timeのlengthを比較します。 もし、unitが互いに換算不可能であれば、exceptionを発生します このオブジェクトがより大きければ1,等しければ0, 少なければ-1を返します

定義:
インタフェース java.lang.Comparable 内の compareTo
パラメータ:
target - 比較target
戻り値:
比較結果