>>38
有効期限が本当にそのオブジェクトが管理すべき情報なのか、それともそのオブジェクトを使う側が
管理すべき情報なのか、それだけじゃ分からんけど、前者だとして

CreationTime(作られた時)
LifeSpan(寿命)
TimeToLive(余命 CreationTime + LIfeSpan - now)
IsAlive(TimeToLive > 0)

こんだけの情報を持たせた方が扱いやすいかも