2005-01-28 初心者入門Java入門 ~Javaの開発環境を用意する手順やJavaを使ったプログラミングの方法について解説します~ | JavaDrive Home プログラミング言語であるJavaを使ってこれからプログラミングを学習しようとする方を対象としたJava入門です。Javaを使った開発を行うために必要となるJDKのインストール方法や、プログラムの作成と保存、そしてコンパイルと実行までJavaを使った開発手順について解説しています。 JDK(Java)のインストールと環境設定 OpenJDKのダウンロード及びインストール PATHの設定及び環境変数JAVA_HOMEの設定 Java SE及びJDKに関するドキュメントのダウンロード Javaプログラム作成手順 Javaを使ったプログラムの作成と保存 プログラムをコンパイルしてクラスファイルを作成する Javaのプログラムを実行する Javaの基本 クラス メソッドとフィールド 最初に呼び出されるクラスのメソッド 文の記述 プログラムの整形 コメント 予約語 Javaのエンコーディングに関する設定 デフォルトエンコーディングを確認する ソースファイルのエンコーディングを指定してコンパイルする 使用するエンコーディングを指定してプログラムを実行する 文字列と数値 文字 文字コード 文字列 特殊な文字の入力(エスケープシーケンス) 数値 8進数、16進数で整数を表現する 指数形式で浮動小数点数を表現する 変数とデータ型 変数の使い方 変数の宣言 変数名のつけ方(識別子) 基本のデータ型 値の代入 変数の初期化 別の値を代入 変数の値を取得 演算子 算術演算子 単項マイナス演算子 除算と剰余の注意点 演算子の優先順位 括弧を使った優先順位の変更 インクリメント・デクリメント演算子 前置と後置 ビット演算子 シフト演算子 代入演算子 関係演算子 論理演算子 条件演算子(三項演算子) 文字列の連結 繰り返し処理 繰り返し処理の使い方 for文 ブロック内で変数を使用 複数の初期化式と変化式 for文の中にfor文を記述 while文 do..while文 拡張for文(for-each文) 条件分岐 if文 条件式がfalseの時の処理(if..else) 複数の条件式を組み合わせる(if..else if) switch文 複数のラベルを対応させる break文を意図的に記述しない 処理の流れを制御 break文 繰り返し処理が多重になっている場合 ラベル付きbreak文 continue文 ラベル付きcontinue文 配列 配列の使い方 配列の宣言 参照型の変数の考え方 要素への値の代入と参照 配列の初期化 配列の長さ 多次元配列 多次元配列の初期化 多次元配列の長さ Stringクラスを使った文字列処理 標準クラスの使い方 Stringクラスのオブジェクトを作成 文字列の処理 文字列と文字列の比較 指定の位置の文字を取得 文字列の長さを取得 メソッドの利用 メソッドの使い方 メソッドの定義 引数を使ってメソッドに値を渡す 引数を使ってメソッドに値を渡す 戻り値を使ってメソッドから値を返す 戻り値として配列を返す return文 メソッドのオーバーロード 可変引数 固定引数と可変引数の組み合わせ mainメソッドと引数 引数を指定してmainメソッドを呼び出す コマンドライン引数の数を確認 型変換 型変換の基本ルール サイズが小さい型から大きい型への変換 キャスト演算子 サイズが大きい型から小さい型への変換 演算の時の型変換ルール ラッパークラスを使った文字列と数値の変換 ラッパークラスの種類 オブジェクトの作成と値の設定 値の取得 数値から文字列への変換 文字列から数値への変換 例外処理 例外とは try文 必ず実行する処理の記述(try..catch..finally) サンプルプログラム(電卓) 入力された値の読み取り 演算子のチェック 数字のチェック 完成版 ファイルを管理する Fileクラス ファイルかディレクトリかの判別 ファイルのパスの取得 ファイルを作成する ディレクトリを作成する ファイルの確認と削除 読み込みの許可と書き込みの許可 テキストファイルの入出力 テキストファイルを読む 読み込みの事前確認 まとめてテキストを読む テキストをファイルに書き込む ファイルに追加で書き込む まとめてファイルに書き込む 便利な書き込み用クラス コレクション(ArrayList) ArrayListクラス 格納されている要素数 要素の置き換え 要素の検索 要素の削除 コレクション(LinkedList) LinkedListクラス 要素の格納と取り出し 要素の置き換えと削除 要素の検索 待ち行列としての利用 コレクション(HashMap) HashMapクラス 要素の格納と取り出し 要素の削除 オブジェクト指向 オブジェクト指向プログラムミングを行うための、クラスやインターフェースの設計から具体的な利用方法を確認していきます。 クラスの基本 クラスとは クラスからオブジェクトを作る クラスを利用してみる mainメソッドとクラスの関係< メンバ変数とメンバメソッド メンバ変数とは メンバ変数に値を格納する メソッドを使ってメンバ変数を変更する理由 publicとprivate メンバメソッドとは 引数だけ異なって名前は同じメソッド コンストラクタ コンストラクタとは 引数があるコンストラクタ 引数が異なるコンストラクタ デフォルトコンストラクタ クラスの継承 クラスの継承とは スーパークラスのメンバへのアクセス 継承時のアクセス制御 スーパークラスのコンストラクタ メソッドのオーバーライド スーパークラスの変数を使う 抽象クラスとインターフェース 抽象クラスとは 抽象クラスの継承 クラスライブラリの利用 既に用意されているクラスを使うことで効率良くプログラムを記述することが出来ます。ここでは用意されている各クラス毎に使い方を見ていきます。 基礎知識 import構文 Stringクラス 文字列の長さを求める(length) 文字列の一部を取得(substring) 文字列を大文字又は小文字へ変換(toUpperCase, toLowerCase) 先頭又は最後の空白を取り除く(trim) 文字列を分割する(split) 最初に該当した文字列を置換する(replaceFirst) 該当する全ての文字列を置換する(replaceAll) Mathクラス 絶対値を求める(abs) どちらか大きい値を取得する(max) どちらか小さい値を取得する(min) 累乗した値を求める(pow) 平方根と立方根を求める(sqrt, cbrt) 対数を求める(log, log10, log1p) 切り上げ/切捨て/四捨五入を求める(ceil, floor, round) Calendarクラス Calendarオブジェクトを取得する(getInstance) 日時に関する情報を取得する(get) 日時を設定する(set) 日時を加算/減算する(add) 日時を比較する(compareTo) 日時のエポックからのUTCミリ秒値を取得する(getTimeInMillis) StringBuilderクラス 文字列を追加する(append) 文字列を挿入する(insert) Scannerクラス キーボードから入力 指定した型の値を読み込む 区切り文字を変更する ファイルから入力