コツコツ学習ブログ

プログラマのweb上のメモ的なもの

2021-08-06から1日間の記事一覧

Javaにおける例外処理の基本

例外クラス APIには、様々な例外的状況を表す例外クラスが用意されている 例外クラスを継承してオリジナルの例外クラスを定義できる 例外の種類 Error系 java.lang.Errorの子孫、回復の見込みがない致命的な状況を表すクラス (例) OutOfmemoryError(メモリ不…

コレクション(List,Set,Map)

コレクションとは 様々なデータ構造に対応した「データをまとめて格納するための」 入れ物クラスのこと Java.uitlパッケージに属し、「コレクションフレームワーク」と呼ばれている List ArrayList LinkedList ArrayListもLinkedListも、ざっくり見れば同じ…

getterとsetter

getterとsetterとは カプセル化を実現するための手法 メンバへのアクセス制御として、フィールドはprivateとして外部から隠す。 getter/setter メソッドでアクセスする。 getterはフィールドの中身を呼び出し元に返すだけの単純なメソッド setterはフィール…

アクセス修飾子

アクセス修飾子とは フィールドやメソッドを宣言する際、先頭に記述することで アクセス制御が可能となる メンバへのアクセス制御の指定方法と範囲 名称 指定方法 アクセスを許可する範囲 private private 自身のクラスのみ package private 何も書かない 自…

カプセル化

カプセル化とは フィールドへの読み書きやメソッドの呼び出しを制限する機能のこと。 アクセス制御とは 情報へのアクセスや動作の実施について、「誰に何を許すか」を定めて制限することを アクセス制御という。

implements と extendsの使い分け

継承元 継承先 使用するキーワード 継承元の数 クラス クラス extends 1つ インタフェース クラス implements 1つ以上 インタフェース インタフェース extends 1つ以上 同種(クラス同士、インタフェース同士)の継承の場合は extendsを使う 異種ならimplement…

インタフェース

インタフェースとは? 抽象クラスの代表格のような存在。いくつかルールがある 全てのメソッドは抽象メソッドである 基本的にフィールドを一つも持たない。ただし、定数(final)は 宣言が許されている インタフェースに宣言されたメソッドは、自動的にpublic…

抽象クラス,抽象メソッド

抽象メソッドとは メソッドの内部の処理が未定なメソッド。 宣言 public abstract 戻り値 メソッド名(引数リスト); 抽象クラスとは 抽象メソッドを含むクラスのこと。 newによるインスタンス化ができない(禁止されている) 抽象クラスのメリット 詳細未定なメ…

has-a の関係

has -a の関係とは あるクラスが別のクラスをフィールド(データ、属性)として 利用している関係 Class A has-a ClassB

is -a の原則

is-aの原則とは オブジェクト指向における概念の一つ この原則が成立しなければ、継承は使うべきではない 子クラス(サブクラス) is -a 親クラス(スーパークラス) 例:Cat is a Pet; Car is Vehicle; など 汎化・特化の関係 継承において、子クラスになるほど…

継承とコンストラクタ

継承されたクラスのコンストラクタの動作 まず、継承されたクラスのインスタンスは内部に親クラスのインスタンスを持つ多重構造である。 全てのコンストラクタは、先頭で「親インスタンス部分のコンストラクタ」 を呼び出す必要がある。 -> super() で呼び出…

等価判定

等価と等値 2つの比較方法は似て火なるもの 等価(equals) 指している2つのものが「同じ内容」であること (同じアドレスを指していなくても良い) Person p1 = new ("ゆうた"); Person p2 = new ("ゆうた"); h1!= h2 h1.equals(h2) となる 等値(==) 指している…

Objectクラス

JavaにおけるObjectクラス 全てのクラスの祖はJava.lang.objectクラスである。 その為 - 全クラスは、Objectクラスで定義されたメソッドを持てる - object型変数には、あらゆるインスタンスを代入可能である 多くのインスタンスに共通する5つの基本操作 メソ…