Yuta Ishikuro

エンジニアになったばかりですが、現在学んでること学んだことをシェアしていきたいと思います。間違えたことを言ってしまう可能性もありますが、ご指摘頂ければ幸いです。

Yuta Ishikuro

エンジニアになったばかりですが、現在学んでること学んだことをシェアしていきたいと思います。間違えたことを言ってしまう可能性もありますが、ご指摘頂ければ幸いです。

最近の記事

多様性の前に少し復習 vol.53

多様性のメリットについて話す前に少し復習しようと思う。 多様性のメリットについて話すときに、for拡張分を使用する。 忘れたかとも多いと思うのでfor拡張分について少し復習しよう。 こちらが以前か来たもの。 例を足していこう。 1.軽く説明構文は for(データ型 変数名 : 配列の変数名){ 処理 } のような感じであった。 2.多様性でクラスをまとめられる今回の多様性では、クラス型のデータを使用していくので for(クラス型 変数名 : クラス型配列の変数

    • 多様性(ポリモーフィズム)とは vol.52

      以前紹介したオブジェクト指向では、3大要素がある。 その三大要素は、まずこれまででも説明した継承がある。これが一つ目の要素。 残り二つは今回紹介する。多様性とあとは、カプセル化というものがある。 オブジェクト指向の三大要素 ・継承 ・多様性 ・カプセル化 1.多様性とは多様性とは、あるものを敢えてザックリ捉えるということ。 一番上のイメージ図も多様性の考え方である。 プログラマ、営業、事務職は従業員というような従業員というザックリとした考え方が多様性。 多様性には

      • LinuC Level1とは vol.51

        今回はJavaではない。 私が現在勉強している資格についてだ。 LinuC Level1という資格がある。どういった資格なのかを説明していこう。 1.LinuC Level1とは LinuCはLinuxの活用スキルに関する資格試験。 ではこのLinuxという単語も聞いたことがない方もいるかと思う。 2.Linuxとは簡単に言うと Mac OS Windows 10 などのOSと同じ。 OSとは、コンピューターのすべてのハードウェアを管理しているソフトウェアのこ

        • インターフェースについて vol.50

          前回は、抽象クラスについての説明だった。 今回はインターフェースについて。 1.インターフェースとはインターフェースとは、抽象メソッドのみのクラスのことである。 インターフェースは、機能は考えたが、具体的な処理を記述せず大枠の骨組みだけのクラス。 インタフェースを抑えると二点で言える。 1.すべてのメソッドが抽象メソッドである 2.基本的にフィールドを持たない 2.インタフェースの宣言前回の抽象クラスではabstractを使用した。 前回はこちら。 では、インタ

          抽象クラスについて vol.49

          前回の続きで今回は、抽象クラスの使い方について紹介していこうと思う。 1.抽象クラスの問題抽象クラスは抽象メソッドを含むクラスであるので、3つ問題がある。 紹介していこう。 ・オーバーライドのし忘れ ・何もしないと区別される ・未完成のまま意図しないnewをしてしまう可能性 この三つがあげられる。 実際にどのような感じかというと、 このように空のメソッドがあるクラスが抽象クラスだ。 変わらず継承を行った。赤い波線が出でいるのは継承元のオーバーライドをしてくれとい

          抽象クラスについて vol.49

          あいまいなクラスについて vol.48

          前回までは継承についての説明であった。 継承するクラスはどれも何かしらの実行処理があった。しかし今回から紹介していくものは実行処理のないメソッドを持つクラスの継承についてだ。 具体的には二種類ある。 1.あいまいなクラスの紹介・抽象クラス ・インタフェース と呼ばれる二つのクラスがあいまいなクラスだ。 この二つはこれまでの継承とは違ってくる。 これまでの継承のやり方では既存のクラスを継承して開発を楽にするというものだった。 しかし、継承してくるクラスは大体はJa

          あいまいなクラスについて vol.48

          コンストラクタsuper();について vol.47

          前回に引き続き継承のコンストラクタについて説明していこう。 コンストラクタは引数が被らなければ複数作ることができる。 今回は親クラスでコンストラクタが二つ以上できた時に使えるsuper();について紹介していこう。 1.複数のコンストラクタを持つ親クラス今回は引数ありのコンストラクタと引数なしのコンストラクタを持つ親クラスで紹介していこう。 こちらが親クラス 続いて子クラス 子クラスも同じような構成でコンストラクタを作成した。 では、Mainクラスで引数を渡した

          コンストラクタsuper();について vol.47

          継承とコンストラクタ vol.46

          今回は継承した時コンストラクタはどうなるのかについて説明していこう。 コンストラクタはこちらを参照していただきたい。 継承についてはこちら。 今回は継承した時にコンストラクタは使えるのか使えないのか。 使えたとして親クラスと子クラスではどちらが先に実行されるのかについて注目していただきたい。 1.コンストラクタも継承されるのか結論から言おう。 コンストラクタも継承される。 コンストラクタがどのようなものかについては上記のコンストラクタとはを見ていただきたい。 で

          継承とコンストラクタ vol.46

          継承とオーバーライドの禁止 vol.45

          今回は継承とオーバーライドをさせない方法についてのみ解説していく。 禁止ということは引き継げないということや変更を加えられないということだ。もしかするともう予想できているかもしれないが、final修飾子を使用する。 今回はそれについてのみなので短い。 継承とオーバーライドについては下記を参照していただきたい。 では本題に入ろう。 1.継承の禁止継承の禁止にはfinalを使う。 なぜ禁止する方法があるかというと、継承して、変に変更を加えて異常な動きをするクラスが出て

          継承とオーバーライドの禁止 vol.45

          オーバーライドについて vol.44

          前回は継承についてどのようなものなのか、使い方について説明した。 今回はその継承に対する操作的なことを行う。 継承関係については細かく区切って説明していこうと思う。 継承についてはこちらを見ていただきたい。 では本題に入ろう。 1.オーバーライドとは継承で受け継いだ、親クラスのメソッドを子クラス側で変更を加えること。 要するに子クラス側で親クラスの処理を上書きして書き換えること。 例を出そう。 前回このようにCellPhoneクラスを親クラスとしてIphone

          オーバーライドについて vol.44

          継承について vol.43

          今回は継承について、ざっくり言うと他のクラスのメソッドを引き継げるということだ。 1.継承とはコードを書いていて、同じようなものを書くことが出てくることがある。 例えば、一つのプロジェクト内に同じようなクラスが二つあるとする。 片方を書いた後でコピペでもう一つのクラスを作成した。 もしそこで修正を加えないといけない状況になったとする。 二つとも修正するという二度手間が起きてしまう。 それがコピペの欠点であり、よりコピペしたクラスが多ければ多いほど、修正の手間も増える

          継承について vol.43

          コンストラクタとは vol.42

          今回はコンストラクタについて、覚えてほしいことはことはがインスタンスとフィールドと何が違うかについてだ。 私は一時期インスタンスとコンストラクタは同じものだと思っていたことがあったが、違うということを知っていただきたい。 インスタンスについてはこちら。 1.コンストラクタとはインスタンスの生成時(ほかのクラスを呼び出すためにnewしたとき)にそのタイミングで最初に行う処理のこと。 初期化の処理ともいえる。 例を挙げてみてみよう。 2.例 フィールドと同じ位置に戻

          コンストラクタとは vol.42

          thisについて-java vol.41

          前回はフィールドについて紹介した。 今回は補足的な内容となる。 前回はこちらを見ていただきたい。 thisとは何なのか、補足としてフィールドとローカル変数、引数の重複について今回は書いていく。 1.thisとはthisはフィールドを宣言した時に、メソッド内で生成される同名の変数や引数と区別するために着けるもののこと。 以前ひとつのメソッド内で同名の変数を宣言することはできないといったが、フィールドはメソッド内で生成されるローカル変数ではないため、フィールド名とローカ

          thisについて-java vol.41

          フィールドについて vol.40

          今回はフィールドについて書いていこうと思う。また、少し修飾子についても触れようと思う。 1.フィールドとは 上記の画像の様にクラスとメソッドの間に変数宣言がされている。 なぜこんなところに書くのかというと以前変数の有効範囲について説明したことがあると思うが、{}でくくられている間が有効範囲である。 今回の様にメソッドの外でありクラスの{}内にくくられているのでそのクラス内なら有効に使える変数がこのフィールドというわけだ。 言語によってはそのような変数をグローバル変数と

          フィールドについて vol.40

          オブジェクト指向とは vol.39

          プログラミングを行っていてオブジェクトというものを聞いたことがあるだろう。 オブジェクト指向とは何なのか。今回はオブジェクト指向について書いていこう。 1.オブジェクト指向とはオブジェクト指向に明確な説明はないといわれている。しかし、そう言われているのだが、共通した事柄から、定義だと思えるものはある。 オブジェクト指向の定義とは、開発するときに部品化して考えるということがオブジェクト指向の定義だと思う。 部品化というのはこれまでもパッケージを分けたり、クラスやメソッド

          オブジェクト指向とは vol.39

          JavaAPIについて vol.38

          前回までは自分の使ったクラスやメソッド、パッケージを呼び出してきた。 今回はJavaのAPIについて紹介していこうと思う。 1.APIとはAPIは「Application Programming Interface」の略称で、外部のソフトウェアが持つ機能を共有できる仕組みを指す。APIを使うことにより、プログラムのコードを一から書く必要がないため、開発を効率良く進めることができる。 要するにJavaが元から用意してくれているもので、 フリーで呼び出していいよっていうパッケ

          JavaAPIについて vol.38