ヤマムギ

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入門ガイド」という本を書きました。

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

【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル」という本を書きました。

 - Java, study , ,

ad

ad

  関連記事

DevLOVE関西「SIerから飛び出して、それからどうするの?」に行ってきました

DevLOVE関西「SIerから飛び出して、それからどうするの?」に行ってきまし …

Developers Summit 2018 「事例2本立て!Redmineユーザ達が語る現場定着化への取組みと導入アンチパターン」を聞きました

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

Innovation EGG 第8回 『可視化・課題と支える技術』に行ってきました

Innovation EGG 第8回 『可視化・課題と支える技術』に行ってきまし …

Backlog World 2021 旅 ~Journey~ オンラインに参加しました

Backlog World 2021 旅 ~Journey~ オンラインに参加し …

IoTセミナー in おおさか「IoTで変わる!企業と働き方」に行ってきました

これからの企業と働き方 ~IoT・AIが創造する未来~ さくらインターネット株式 …

MySQL勉強会 in 大阪(第10回)に行ってきました

MySQL勉強会 in 大阪(第10回)に行ってきました。 オプティマイザー、G …

JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを作る側からの物申す〜に参加、運営、登壇しました

先日、JAWS-UG Osaka 第14回勉強会 「DIY」 〜自社内システムを …

Innovation EGG 第6回 『IoT 今と未来』に参加してきました

雨を心配していましたが、曇り空ながら雨はやんで、180名強の方が参加されたInn …

「関西AWSスタートアップ勉強会」に行ってきました

第2回 関西スタートアップAWS勉強会に行ってきました。 akippa 拠点数コ …

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました。 全部で …