新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

Scalaで遊んでました。Account基底クラスとTimeAccount派生クラス

2018-04-27 22:08:46 | Scala

 

 「明解Java入門」の説明では、スーパークラス型の変数、上で言えばxだと思います。サブクラスのインスタンス、上で言えばnakataだと思います、を参照出来る。とあります。でもここではx = nakataはエラーになります。scalaの場合は変数のタイプと参照されるタイプが合ってないといけない。この方が分かり易い、と思います。

 Scalaではクラス変数と言うのが無いんだそうです。objectを使うと言うことですが、どうもやり方が分かりません。「明解Java入門」のサンプルではidをクラス変数にしてます。インスタンスが出来るたびに+1するんでしょう。(-_-;)

 シングルトンですか?Counter出来ました。(^o^)前はidを初期化で与えてましたが、メンバ変数にします。x.idと書けなかったのでgetidを定義します。

idを初期化から外します。

下は実行画面です。同じようですが、変更の結果1から始まり次は2になってます。

 

コメント    この記事についてブログを書く
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« Scalaで遊んでました。スーパ... | トップ | Scalaで遊んでました。スーパ... »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Scala」カテゴリの最新記事