ヤマムギ

growing hard days.

*

Java SE 7 Silver対策勉強をしながらメモ 2015/2/3

      2015/03/29


本日は継承。

眠すぎるのでちょっとだけ。
本当に少しだけでもいいから続ける。それが、一番、大事。多分。

いつものごとくマークダウンで記載したのでそのままJetpack Markdownにお任せでアップ

toString()のオーバーライドと思いきやローカル変数の罠

[java]
public class Test{
private String msg; //インスタンス変数
public Test(){this(“Good Morning”);}
public Test(String msg){msg = msg;}//ローカル変数への処理
public String toString(){return (“msg : “+ msg);}//インスタンス変数はnull

public static void main(String[] args){
System.out.println(new Test()); //toString()が実行される
}
}
[/java]

  • 出力は「msg : null」
  • System.out.printlnの引数にオブジェクトを与えるとtoString()が実行される
  • toString()をオーバーライドしている
  • でも引数付きのコンストラクタではインスタンス変数への代入をしていない

デフォルトコンストラクタがないコンパイルエラーの発生行

[java]
class A{
A(String msg){ //引数付きのコンストラクタのみのスーパークラス
//code
}
}

class B extends A{
B(){ //サブクラスのコンストラクタ実行時にsuper()が実行されるのでここでコンパイルエラー
//code
}
}
public class Test{
public static void main(String[] args){
B b = new B();
}
}
[/java]

  • 2行目はただの引数付きのコンストラクタ
  • 7行目の実行でsuper()が実行されるが、スーパークラスには引数なしのコンストラクタがないからコンパイルエラーとなる

最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - Java, study , ,

ad

ad

  関連記事

「SORACOM & myThingsを使ったハンズオンセミナー in 大阪」に行ってきました

SORACOM & myThingsを使ったハンズオンセミナー in 大阪に行っ …

「kintone Café 大阪 Vol.8 〜夏の事例祭り!〜」に行ってきました

「kintone Café 大阪 Vol.8 〜夏の事例祭り!〜」に行ってきまし …

第四回 八子クラウド座談会in関西 「メーカーとITが急接近!?IoTってどないやねん!?」に参加しました

第四回 八子クラウド座談会in関西 「メーカーとITが急接近!?IoTってどない …

「SendGrid Night in Osaka #2」でLTさせていただきました

SendGrid Night in Osaka #2でLTをしてきました。 会場 …

AWS認定のバッジ管理が新しくなったみたいです

ふと、メールが届きました。 なんでしょうね。 いきなりリンクを踏むのもあれなんで …

Developers Summit 2018 「もしSIerのエンジニアがSRE本を読んだら」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

ヤマムギvol.25 EC2にWordPressをインストールするデモをしました

今日はAWSではじめるLinux入門ガイドの17章に書いている「LinuxにWo …

「大阪Pythonユーザの集まり」に行ってきました

「大阪Pythonユーザの集まり」 に行ってきました。 あんまりメモ取れてません …

「JP_Stipes Osaka meetup vol.1」を運営させていただきました

Stripeのユーザーグループ、JP_Stripesの大阪ミートアップの運営をさ …

持ち帰って欲しいもの

「カスタマーサクセス Advent Calendar 2018」にお誘いを受けま …