Java基礎

Javaのデスクトップアプリを作ってみる

前回の記事で、Javaの開発環境の構築が完了したので、今回はデスクトップアプリの作成方法を説明していく。 ※デスクトップアプリとは、PCのデスクトップ上で動作するアプリのこと 今回は、下記を達成することが目標です。 Eclipse上でコード修正・動作確認 .…

Javaの開発環境を構築する(Eclipse)

Javaのプログラムを書き始めるまでに必要な環境構築手順を説明する。 統合開発環境として、Eclipseを使用する。 Javaの簡単なプロジェクトで「Hello World」を標準出力するところまでまとめます。 1. Eclipseダウンロード 下記のページにアクセスして、Eclip…

Javaで正規表現チェック

正規表現 正規表現とは 様々な文字列を一つの文字列で表現する表記法 なぜ便利なのか 正規表現を利用すると様々な文字列を一つの文字列で表現できるため、文字列の検索や置換が便利になる。 例えば、以下の文字列は全て同じ正規表現で表すことができる。 app…

Java基礎ーSQL

SQL Java標準の機能を使用したDBの処理 についてまとめる。 JDBCドライバのダウンロード DBの公式サイトからJDBCドライバをダウンロードして、クラスパスに配置する。 DBに接続する public void doSql(){ // ドライバーのダウンロード Class.forName("org.po…

Java基礎ーOptional

java.util.Optionalクラス Optionalは値をラップし、その値がnullかもしれないことを表現するクラス。 Optionalオブジェクトの生成 メソッド 説明 Optional empty() null値を持つOptionalオブジェクトを返す Optional of() 非null値を持つOptionalオブジェク…

Java基礎ーStream

StreamAPI 配列やCollectionなどの集合体を扱う為のもので、値の集計やデータを使った処理などが出来るAPI 使い方の大まかな流れ 1. Streamを取得 主なStreamの種類 インターフェイス 説明 Stream<t> 要素がTのインスタンスのStream IntStream 要素がintの値のS</t>…

Java基礎ーラムダ式

ラムダ式 関数型インターフェースを実装するための記述を簡潔に書ける →抽象メソッドを1つ持つインターフェース 基本形:インターフェース名 オブジェクト名 = (引数1, 引数2, ・・・) -> {処理 ; return 戻り値;}; ラムダ式記入例 // 関数インターフェース…

Java基礎ープロパティファイル

プロパティファイル プロパティファイルとは キーと値が対になったデータを保存しているファイル。 コンパイルなしでプログラムの動作を変更できるので後で変わる可能性のある値とか設定すると良い。 # コメント sample.id=abcde プロパティファイルの読み込…

Java基礎ーファイル入出力

ファイル入出力 1. ファイル入力 ファイル読み込みには以下の4種類のいずれかを使用する。 種類 説明 FileReader ファイルを1文字ずつ読み込む。Java11以降はエンコーディングを指定することができる。 BufferedReader FileReaderをラップするクラス。ファイ…

Java基礎ー標準出力とロガー

標準出力 標準出力はコンソールに引数に渡された値を出力する。 public class Main { public static void main(String[] args) { String name = "山田"; int age = 30; // 標準出力はコンソールに引数に渡された値を出力する System.out.println("私の名前は…

Java基礎ー文字列操作

文字列操作 Java標準のクラスで文字列操作を行うことができる。 以下は代表歴なものの使用例。 public class Main { public static void main(String[] args) { List<String> list = List.of("abc", "def", "ghi"); // 文字列の連結 // 1. +を使用する String str = </string>…

Java基礎ーPOJO,Bean,DTO,Entity,VOの違い

POJO,Bean,DTO,Entity,VO VO (Value Object) オブジェクトとしての塊というより、プロパティを基準にしたクラス。 値の設定はコンストラクタのみでゲッターは持っているがセッターを持たない(値は不変)。 DDD(domain driven design:ドメイン駆動設計)の…

Java基礎ークラスの継承

クラスの継承 継承(Inheritance):あるクラスの機能を引き継ぎながら新しいクラスを定義すること →あるクラスで定義したプロパティとメソッドをそのまま受け継ぎつつ、独自のプロパティやメソッドを差分として定義することできる 継承元となるクラスのこと…

Java基礎ー日付関連クラス

日付関連クラス 1. DateとCalendar Java8まで使用されてきた日付クラス。 Dateクラスは日付操作するメソッドを持たない(あっても非推奨)なので、日付の操作はCalendarクラスで行う。 Dateクラスでは、Date⇔文字列の相互変換を行う。 Date date = new Date(…

Java基礎ーコメントとJavadoc

コメントとJavaDoc コメント:ソースコード内に、コードをぱっと見ただけでは伝わらなさそうなことをメモ書きとして残しておく // これは1行のコメントを書ける /* 複数行の場合はこっちを使う これはただのコメントです */ JavaDoc:クラスやメンバ変数、メ…

Java基礎ー例外処理

Javaの例外処理の基本 例外とは プログラムを実行する最中に発生するエラー(Exception)のこと。 Javaにおけるプログラムの実行中に発生するエラーには、大きく分けて2つの種類が存在する。 実行環境のトラブルなどプログラムからは対処しようのない事態を…

Java基礎ーアノテーション

アノテーション(注釈) クラス、フィールド、ローカル変数に対して付与することができる。 @Xxx の形式で、Java の言語機能としては表現できない補足情報を注釈 (annotation) として記述するための仕組み。 標準アノテーション型 Override スーパークラスの…

Java基礎ーCollectionとMap

CollectionとMap 1. List 順番を保持した動的配列で、以下の特徴がある。 格納した順番も保持される インデックス番号を指定して特定のデータを取得することが出来る データの重複が可能 1.1 Listの種類 クラス名 説明 ArrayList 要素へのアクセススピードが…

Java基礎ーインターフェースと抽象クラス

インターフェースと抽象クラス 1. インターフェース 実装のないメソッドを定義することができる。 インターフェースを実装したクラスにメソッドの実装を強制することができる。 ⇒インターフェースをきちんと作れば実装漏れがなくなる。 宣言 public interfac…

Java基礎ーtoString()メソッドの実装

toString()の実装 今日はtoString()メソッドの実装についてまとめます。 業務ではapacheのToStringBuilderやLombokに頼っている印象です。 何も実装しなかった時の挙動 以下のようなShainクラスがあったとする。 public class Shain { private String name; …

Java基礎ーラッパークラスとプリミティブ型

1. ラッパークラスとプリミティブ型 プリミティブ型 ラッパークラス boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double ラッパークラス *特徴* + メソッドを持つ + nullを代入できる + static変数を…

Java基礎ー定数クラスとEnum

定数クラスとEnum 1. 定数クラス 定数クラス:クラス内に定数のみが定義されているクラス。 基本的に定数は使用するクラスで定義するが、複数のクラスで同じ値を定数として定義する場合はそれらの定数をまとめて1つのクラスとすることがある。 全然関係ない…

Java基礎ークラスとインスタンス・アクセス修飾子

今日からしばらくは、昨年度に新人さん相手にJava勉強会をやった際に作成したメモを清書していこうと思います。 今日はJavaのクラスについてまとめます。 1. クラスとインスタンス クラス・・・設計図のようなもの インスタンス・・・設計図をもとに作成した…