ヤマムギ

growing hard days.

*

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

      2015/03/29


練習問題4日目。

とりあえずひと通り終了。

317問中288問正解、90.85%。
でも2回目でこの結果は不本意。

いつものごとく間違えた箇所とか要注意と思った箇所をマークダウンでメモしたのでそのままJetpack Markdownにお任せでアップします。

final代入禁止を見極める!!!

[java]
public class Cow {
final static Cow cow = new Cow();
public static void main(String[] args){
Cow cowOne = cow;
Cow cowTwo = cow.dive(cow);
Cow cowThree = cow;
}

Cow dive(Cow c){
c = new Cow();
return c;
}
}
[/java]

  • 2行目でfinal修飾子で宣言しているので11行目で代入禁止のコンパイルエラーとなりそうだが、これは大丈夫。
  • ただし、mainの中やdiveの中で cow = new Cow()とすると代入禁止のコンパイルエラーとなる。

戻り値がサブクラスであればオーバーライド可能

[java]
class Test0{
Test0 getTest(){
return new Test0();
}
}

public class Test extends Test0{
Test getTest(){
return new Test();
}
public static void main(String[] args){
//code
}
}
[/java]

今日の注意点

継承のない別クラスの同名メソッドに惑わされない!!!

String str = nullの出力は「null」!!!

インターフェースのメソッドは暗黙的に「public abstract」なので実装時はpublic!!!

インターフェースの変数は「public static final」なので定数!!!

インターフェースを抽象クラスで実装する場合全てのメソッドを実装しなくても良い!!!

継承する具象クラスに任せればよい。

インスタンスメソッドで外部に公開したくないメソッドはprivate修飾子でもカプセル化のルールには反しないが、インスタンス変数はprivateで隠蔽しないとカプセル化のルールに反する!!!

try~catch~finallyはcatch,finallyのいずれかどちらでも省略できる!!!

Integer,Shortなど参照型ラッパークラスの初期化していない事によるNullPointerException問題に注意!!!

スーパークラスのthrowsに対してサブクラスは同じクラスかサブクラスかthrowsしないかRuntimeExceptionとそのサブクラスを指定するか!!!

RuntimeExceptionとそのサブクラスは例外処理をしなくてもコンパイルエラーにならない!!!


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

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

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

 - Java, study , ,

ad

ad

  関連記事

「実践AWSプログラミング in Osaka」に行ってきました

クラスメソッドさんの「実践AWSプログラミング in Osaka」に行ってきまし …

MonotaRO TechTalk #4「データ分析」に行ってきました

本日の一杯目。MonotaRO TechTalk #4「データ分析」もちろん呑み …

JP_Stripes Connect 2019で決済サービスの事例を聞いてきた

JP_Stripes Connect 2019が大阪で開催されるということで、行 …

Developers Summit 2018 「自然言語処理・機械学習を活用したファクトチェック業務の支援」を聞きました

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

「kintone Café 大阪 Vol.15 〜kintone Night Café 2017 〜」でLTしてきました

「kintone Café 大阪 Vol.15 〜kintone Night C …

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

本日は継承をどっぷりと。 一気に詰め込んで正解だったかも。 いつものごとくマーク …

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (3)Lambdaからkintoneへレコードを登録する

作る部分 Lambdaからkintoneへレコードを登録する部分を作成します。 …

「Botの王道:配達ピザの注文をさばくBotを2時間で開発するワークショップ@大阪」に参加しました

「Botの王道:配達ピザの注文をさばくBotを2時間で開発するワークショップ@大 …

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

今日から練習問題を再確認。 ひと通りテキストを終えた安心感からかイージーミスが連 …

交通情報系スキルを事例に見る日常生活に溶け込むスキルのテクニック(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …