クラスⅠ

Size: px
Start display at page:

Download "クラスⅠ"

Transcription

1 クラス Ⅰ 今回の課題項目 クラスライブラリ ( 概要 クラス パッケージ ) クラスライブラリ ( クラスのインポート ) クラスライブラリ ( クラスのメンバ 静的メンバ インスタンスメンバ ) メソッドの種類 ( クラスライブラリのメソッド 自作のメソッド ) メソッドの構成 ( 戻り値 メソッド名 引数リスト メソッド本体 ) メソッドの定義 ( オーバーロード : 多重定義 ) メソッドの呼出 ( 静的メソッド インスタンスメソッド ) メソッドの作成 (main メソッド ) メソッドの作成 ( サブルーチン化 ) メソッドの作成 ( インターフェイスメソッド ) 今回の重点項目 クラスライブラリ ( パッケージ インポート メンバ ) メソッド ( 種類 構成 オーバーロード 呼出 ) メソッド (main メソッド サブルーチン化 ) -1-

2 クラスライブラリ クラスライブラリ Java のクラスライブラリ (Class Library) は 様々なクラス (Class) を提供して居り 此等のクラスで定義された変数やメソッドを使用する事で 効率的にプログラミングを行う事が出来る Java のクラスライブラリは 関連する複数のクラスを纏めたパッケージ (Package) と謂う単位でグループ化されて居る 猶 パッケージの中に他のパッケージを含む事も可能で 此の様なパッケージをサブパッケージ (Sub Package) と謂う 下記に Java の主なパッケージを示す java.lang java.util java.io java.applet java.awt java.text java.net Java プログラム言語の設計に当り基本的なクラスを提供各種のユーティリティクラス ( 日時機能 乱数ジェネレーター ビット配列等 ) を提供データストリームやファイルシステムに依るシステム入出力用クラスを提供 Java アプレットを作成する為のクラスを提供ユーザインタフェースの作成 グラフィックスとイメージのペイント用の総てのクラスを提供テキスト 日付 数値等を 自然言語に依存しない方法で処理する為のクラスを提供ネットワーク対応アプリケーションを実装する為のクラスを提供 猶 総てのパッケージに付いての詳細は Java2SDK ドキュメントの API と言語仕様で得る事が出来る クラスのインポート パッケージの中に有るクラスの機能を使用するには ソースコードの先頭で 使用するパッケージのクラスをインポート (Import) する必要が有る import 文の書式は 下記の通りで有る import パッケージ名. クラス名 ; // 記述例 :import java.awt.graphics; 同一のパッケージ内の多数のクラスを使用する場合は クラス名にアスタリスク *(Asterisk) を使用して 総てのクラスをインポートする事が出来る import パッケージ名.* // 記述例 :import java.awt.* 但し パッケージのインポートでは サブパッケージ迄は取り込まれない 即ち 上記では サブパッケージで有る java.awt.event パッケージ内の MouseEvent クラス等は使用する事が出来ない 此等のクラスを使用する場合には 下記の様に 個別にパッケージのインポートを行う必要が有る import java.awt.* import java.awt.event.*; 猶 System クラスや String クラスや Math クラス等の頻繁に使用されるクラスを定義した java.lang パッケージは デフォルトでインポートされる為 記述する必要は無い -2-

3 クラスのメンバ クラスで定義されたメソッド 変数 及び 定数 (final 変数 ) の事をメンバ (Member) と謂う 亦 変数と定数を総称してフィールド (Field) と謂う メソッドとは クラスの持つ動作 (Action) で有り フィールドとは クラスの持つ属性 (Attribute) で有る Java のクラスライブラリで提供されて居るクラスで定義されたメンバには クラスをインポートする丈で使用する事の出来る静的メンバ (Static Member) と クラスをデータ型と仕た変数を宣言しないと使用する事の出来ないインスタンスメンバ (Instance Member) が有る 静的メンバの定義 // 例 :static int parseint(string s) インスタンスメンバの定義 // 例 :String tostring( ) 猶 静的とは 常にメモリ上に存在する事を意味し 静的メンバ ( 静的フィールドと静的メソッド ) には static 修飾子が付加される 此れに対して インスタンスとは 動的にメモリ上に配置される実体を意味し インスタンスメンバ ( インスタンスフィールドとインスタンスメソッド ) には 修飾子は付加されない 静的メンバを使用する場合には 下記の様に指定する クラス名. メンバ名 String s = "123"; int i; i = Integer.parseInt(s); // String クラスの変数 s の宣言と初期化 // int 型の変数 i の宣言 // 静的メソッドの使用 インスタンスメンバを使用する場合には 下記の様に指定する インスタンス名. メンバ名 String s; Integer i = new Integer(123); s = i.tostring( ); // String クラスの変数 s の宣言 // Integer クラスの変数 i の宣言とインスタンスの生成 // インスタンスメソッドの使用 インスタンスを生成する事をインスタンス化 (Instantiate) と謂い クラスをインスタンス化するには new 演算子を使用する クラスからインスタンスを生成する書式は 下記の通りで有る クラス名変数名 = new コンストラクタ ( ); コンストラクタ (Constructor) とは クラスからインスタンスを生成する為に クラスを初期化する特別なメソッドで有り クラス名と同じ名称を持つ 猶 コンストラクタには 引数を与えて初期化を行う物も有る コンストラクタは new 演算子に依るインスタンスの生成時に呼び出し 通常のメソッドの様に直接呼び出す事は出来ず 亦 戻り値は 常に インスタンスへの参照で有る 猶 変数には インスタンス自体が格納されるわけではなく インスタンスへの参照 (C/C++ のポインタ ) が格納される -3-

4 メソッド メソッドの種類 メソッド (Method) とは プログラムの文 ( ステートメント :Statement) をブロック化する機構で データに対して何等かの処理を行う物で有る メソッドは 下記の 2 種に分類される クラスライブラリで定義されたメソッドプログラマが作成するメソッド System.out.println メソッド等 main メソッド等 クラスライブラリ (Class Library) とは カテゴリ別に分類した様々な機能を持つクラスの集合体で有り 各クラスには プログラム作成に有用なメソッドが 数多く定義されて居る クラスライブラリが提供するメソッドに目的の機能が無い場合には プログラマが独自にメソッドを作成する必要が有る 猶 Java アプリケーションでは 最低限 プログラムの実行開始位置と成る main メソッドを独自に作成しなければ成らない メソッドの構成 メソッドは 下記の各部より構成される メソッド修飾子戻り値のデータ型メソッド名 ( 引数リスト ) throws 例外リスト メソッド本体 メソッド修飾子 (Method Modifiers) メソッド修飾子は アクセス制御等を指定する物で 省略可能で有る abstract 抽象メソッド ( 抽象メソッドを1 個でも持つクラスは抽象クラス ) 1 final オーバーライド出来ないメソッド 2 private 同じクラスからしか呼び出せないメソッド 省略 同じパッケージ内からしか呼び出せないメソッド protected 同じパッケージか其のサブクラスからしか呼び出せない public 何処からでも呼び出せる static 静的メソッド 3 synchronized マルチスレッド時に同期を取るメソッド 4 native C 言語等で作成された函数等のネイティブコード 1: メソッド名 引数 戻り値は定義されて居るが ブロック内の処理 ( 実装 ) が行われて居ない 2: 継承に依り此のメソッドの機能変更や拡張は出来ない 3: 当該メソッドが定義されて居るクラスをインスタンス化しなくても利用出来る 4: スレッドに呼び出された時点でロックされる為 複数のプロセスに依り実行される事が無く成る アクセス制限を記述する修飾子は public protected private で 此等は相互に排他的で 1 個のメソッドに複数記述する事は出来ない 不完全なメソッドを持つクラスを抽象クラスと呼ぶ 此の様なクラスは 継承され サブクラスでオーバーライドされる事に依り当該メソッドの実装を果たし 初めてインスタンス化され得る -4-

5 戻り値のデータ型 (Result Type) 戻り値のデータ型は 当該メソッドが終了した時に返す値のデータ型で有る 配列型の戻り値も可能で有る 猶 戻り値が無い場合は 型宣言の部分に void と記述する メソッド内で呼び出し元に戻り値を返すには return 文を使用する 猶 此の時 return 文で指定した値とメソッドで宣言したデータ型が一致して居ないと コンパイル時にエラーが発生する メソッド名 (Method Identifer) メソッド名は 其のメソッドを参照する名前と仕て使用される 名前の付け方は 任意で有るが 1 文字目は半角英小文字でなければ成らない 数字は不可で 英大文字も慣習的に使用しない 猶 クラス名と同じ名前のメソッドは コンストラクタと仕て認識される為 通常のメソッドに クラス名と同じ名前を付ける事は出来ない 引数リスト (Parameter List) 引数 ( ひきすう ) とは メソッドを呼び出す時に メソッドに対して動作条件を指定する為の値の事で有る 引数リストは 此の引数のデータ型と引数名を定義する物で 引数を必要と仕無い場合には 省略可能で有る 此の場合には 空の小括弧 ( )( パーレン :paren) 丈を記述する 引数リストで定義された引数の有効範囲 (Scope) は 当該メソッドの本体全体で有る 引数リストの定義を行う書式は 下記の通りで有る データ型 1 引数名 1, データ型 2 引数名 2, データ型 n 引数名 n メソッド名と引数リストを合わせてシグネチャ (Signature: 署名 ) と呼ぶ 此れがメソッドを識別する物と成る為 同一のクラスで 同じシグネチャを持つ複数のメソッドを宣言すると コンパイル時にエラーが発生する throws 節 (Throws Clause) throws 節は メソッドの実行から生じる可能性の有る例外を宣言する為に使用する 当該メソッドの実行中に 例外リストに列挙された例外 (Exception) が発生した場合 メソッドの呼び出し元に 例外を返す ( 例外を投げる :throw) 事に成る 猶 throws 節で指定した例外クラスが throwable クラスか 又は 其の下位クラスでなければ コンパイル時にエラーが発生する メソッド本体 (Method Body) メソッド本体には 当該メソッドの処理を行うステートメントを記述する 猶 メソッド修飾子に abstract を指定した抽象メソッドでは 実装するコードブロックが無い事を示すセミコロン (;) 丈を中括弧 ( ブレス :brace) 内に記述する 猶 メソッドが void 宣言されて居る場合は 式を持つ return 文を含む事は出来ず 逆に 戻り値を持つメソッドは 式を持つ return 文で制御を戻す必要が有る -5-

6 メソッドのオーバーロード Java では メソッドを識別するのに メソッド名と引数リスト ( 引数の個数とデータ型 ) で構成されるシグネチャを使用する 其の為 同じメソッド名でも 引数リストの異なる物は 別の物と仕て扱われる 猶 同じメソッド名で 引数リストの異なるメソッドを同時に定義する事を メソッドのオーバーロード (Overload: 多重定義 ) と呼ぶ メソッドのオーバーロードを使用すると 用途の同じメソッドを纏めて定義する事が出来る 但し 同じシグネチャでメソッドをオーバーロードすると 同一のメソッドが複数存在する事に成り コンパイル時にエラーが発生する メソッドの呼出 メソッドに処理を移行する事を メソッドを呼び出す (Call) と謂う メソッドを呼び出す為には メソッド名の後ろに小括弧 ( )( パーレン :paren) で囲んで引数を指定する 静的メソッドを呼び出す場合には 下記の様に指定する クラス名. メソッド名 ( 引数リスト ) String s = "123"; int i; i = Integer.parseInt(s); // String クラスの変数 s の宣言と初期化 // int 型の変数 i の宣言 // 静的メソッドの使用 インスタンスメソッドを呼び出す場合には 下記の様に指定する インスタンス名. メソッド名 ( 引数リスト ) String s; Integer i = new Integer(123); s = i.tostring( ); // String クラスの変数 s の宣言 // Integer クラスの変数 i の宣言とインスタンスの生成 // インスタンスメソッドの使用 引数の値は 変数で指定しても リテラル (Literal: 定数 ) で指定しても良い 複数の引数を持つメソッドの場合は 夫々れの引数をカンマ区切りで列挙し 亦 引数を持たないメソッドの場合は メソッド名の後ろに小括弧丈を記述する 亦 戻り値を変数に代入する場合には 代入演算子 = (Equal) の左辺に戻り値を受け取る変数を記述し 右辺にメソッド呼出を記述する 基本データ型の変数やリテラルを引数に渡す時には データがコピーされる 其の為 メソッドに渡された引数の値をメソッド内で変更しても 呼出元の変数には影響を及ぼさない i = Integer.parseInt( s ); コピー 呼出 static int parseint(string s) コピー return 戻り値 -6-

7 main メソッドの構成 プログラムの実行開始位置と成る main メソッドは メソッドの構成規則に従い 一般に 下記の様に定義する public static void main(string args[ ]) 処理内容 public 修飾子はクラス外からのアクセスを可能にする 外からアクセスされる事の無い main メソッドに public 修飾子を指定するのは 単なる習慣で有るが 必ず public でなければ成らない static 修飾子が指定されて居るのは 此のメソッドをメンバに持つクラスが インスタンス化されなくても利用する事が出来る様にする為で有る main メソッドは プログラムの開始直後に実行される為当該クラスがインスタンス化されなくても 利用出来る様に成って居る必要が有る為 必ず public でなければ成らない 戻り値は 一般に 無い 其れは main メソッドが 最初に実行されるメソッドで有る為 戻り値を返す相手が無いからで有る 引数は コマンドラインから受け取る 此れを String クラスの配列で定義して置く スペース区切りのコマンドライン引数が String クラスの配列に 要素番号 0 から順次格納される 猶 数値型のデータの場合は ラップクラス等で 数値型に変換して使用する事に成る 猶 main メソッドで throws 節を記述する事も出来る 此処で指定した例外は メソッドの実行中に発生しても キャッチしないで 上位の呼出元のクラスに例外の処理を委任する為 例外の処理は main メソッドの呼出元で有る JVM(Java Virtual Machine) が行う事に成り main メソッドの中で例外処理を行う必要が無く成る 但し 例外が発生した時点で プログラムの処理は停止する 例外をキャッチした JVM は トレースバック情報 ( 例外の経路と種類 ) を表示して プログラムを停止する為 プログラム開発時には main メソッドで 例外をスローする手法も用いられるが 実用プログラムでは 例外に応じて catch 節で処理する事が望ましい メソッドの作成 メソッドとは 前述の様に プログラムの文 ( ステートメント :Statement) をブロック化する機構でデータに対して何等かの処理を行う物で有る 総てのコードを main メソッドの中に記述するのではなく プログラムを機能別に細分化 ( サブルーチン化 :Subroutinize) する事は 開発効率や保守性を高める効果が有る 猶 イベント駆動型 (Event Driven Type) のプログラムでは 機能毎にメソッドに分割する事は必須と成る メソッドを定義するには メソッドの構成に従い クラスの中にメソッドのプロトタイプ (Prototype) と処理内容を記述する 猶 プロトタイプとは メソッドの構成に於ける処理部分 ( ブレス で囲まれた部分 ) を除く部分を謂う インターフェイスメソッド 他のオブジェクトから利用可能なメソッドの事を インタフェースメソッドと呼ぶ 他のオブジェクトとの会話のインタフェースに成るメソッドは少ない方が安全なので 最初は全てのメソッドを private に仕て置き 必要に応じて インタフェースメソッドを選び出して public にすると良い -7-

8 演習 メソッドの作成 ( 数値の平均値 ) 下記のコードを テキストエディタで入力し Average.java と謂うファイル名で保存した後 コンパイルして 実行する /* ============================== */ /* メソッドの作成 ( 数値の平均値 ) */ /* ============================== */ public class Average public static void main(string args[]) double av = average(40, 60, 90); System.out.println("40, 60, 90 の平均 = " + av); static double average(int a, int b, int c) double ans = (double)(a + b + c) / 3; return ans; JAVA では大文字と小文字は区別される 40,60,90 の平均 : _ av = average(40, 60, 90);: メソッドを呼び出し戻り値を変数に代入する式 (Expression) メソッドでの定義通り int 型の数値リテラル を引数と仕て average メソッドを呼び出し 其の戻り値を 変数 av に代入する 此処では average メソッドの戻り値のデータ型が double 型で有る為 double 型の変数 av に 戻り値を代入して居る static double average(int a, int b, int c): メソッドのプロトタイプ (Prototype) 此処では 3 個の int 型の引数を取り double 型の戻り値を返すメソッド average を定義して居る アクセス制御に static 修飾子を指定して居るので 此のメソッドが定義されて居るクラス 即ち Average クラスをインスタンス化しなくても 此のメソッドを使用する事が出来る 亦 アクセス制御に public protected private の孰れも指定して居ないので 此のメソッドは 同じパッケージ内からしか呼び出す事が出来ない double ans = (double)(a + b + c) / 3: 演算精度を上げる為のキャスト (Cast) 変数 a b c は 孰れも int 型で有る為 当該変数を加算した結果は int 型と成る 亦 数値リテラル 3 も整数型で有る為 (a + b + c) / 3 の演算結果は 整数型と成り double 型の変数に代入しても 小数点以下のデータは消失する 其の為 此処では 変数 a b c の加算結果を double 型にキャストして居る return ans;: 戻り値を設定して復帰する文 (Statement) return 文は 呼び出されたメソッドから 呼び出したメソッドに戻る為に使用する 戻り値を持つメソッドは 戻 り値の値を示す式 ( 此処では変数 ans) を指定した return 文で制御を戻す必要が有る -8-

9 メソッドの作成 ( 階乗の計算 ) 下記のコードを テキストエディタで入力し Factorial.java と謂うファイル名で保存した後 コンパイルして 実行する public class Factorial public static void main(string args[]) int i; for (i = 11; i > -2; i--) int f = fact(i); String s; if(i<0 i>9) s = "" + i; else s = " " + i; if (f == -1) System.out.println(s + "!: 不正な値です "); else System.out.println(s + "!: " + f); static int fact(int i) if (i < 0 i > 10) return -1; else int j; int f = 1; for (j = 1; j <= i; j++) f = f * j; return f; 11!: 不正な値です 10!: !: !: !: !: 720 5!: 120 4!: 24 3!: 6 2!: 2 1!: 1 0!: 1-1: 不正な値です _ static int fact(int i): メソッドのプロトタイプ (Prototype) 此処では 1 個の int 型の引数を取り int 型の戻り値を返すメソッド fact を定義して居る return -1;: 戻り値を設定して復帰する文 (Statement) 此処では 本来有り得ない値を戻して 呼出元でのエラー判定に利用して居る -9-

10 メソッドの作成 ( バブルソート ) 下記のコードを テキストエディタで入力し Sort.java と謂うファイル名で保存した後 コンパイルして 実行する public class Sort static int data[] = 54, 24, 56, 95, 79, 28, 42, 38, 60, 29; public static void main(string args[]) String m; int i; m = " ソート前 :" + data[0]; for (i = 1; i < 10; i++) m = m + ", " + data[i]; System.out.println(m); sort(); m = " ソート後 :" + data[0]; for (i = 1; i < 10; i++) m = m + ", " + data[i]; System.out.println(m); static void sort() int i, j; int t; ソート前 :54,24,56,95,79,28,42,38,60,29 ソート後 :24,28,29,38,42,54,56,60,79,95 _ for (i = 0; i < 10; i++) for (j = 0; j < i; j++) if (data[j] > data[j + 1]) t = data[j]; data[j] = data[j + 1]; data[j + 1] = t; static int data[] = ;: 配列を宣言し初期化を行う文 (Statement) 此処では クラス内の総ての部分で参照する事の出きるメンバ変数 data を int 型の配列で定義して居る 此の様に クラス内の何のメソッドからでも使用する事の出来る変数を宣言するには メソッド外の 通常 class 定義の直下で宣言する static void sort( ): メソッドのプロトタイプ (Prototype) 此処では 引数を取らず 戻り値も返さないメソッド sort を定義して居る -10-

11 メソッドの作成 ( オーバーロード ) 下記のコードを テキストエディタで入力し Overload.java と謂うファイル名で保存した後 コンパイルして 実行する import java.io.*; public class Overload public static void main(string args[]) long l; double d; BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); try System.out.print(" フィート :"); String s = input.readline(); try l = Long.parseLong(s); System.out.println(" メートル :"+conv(l)); catch(numberformatexception el) try d = Double.parseDouble(s); System.out.println(" メートル :"+conv(d)); catch(numberformatexception ed) System.out.println(" 数値では有りません "); System.exit(1); catch(ioexception e) System.out.println(" 例外が発生 :" + e); static double conv(long lng) double ret = lng * ; return ret; static double conv(double dbl) double ret = dbl * ; return ret; フィート :30 メートル :9.144 _ static double conv( ): メソッドのプロトタイプ (Prototype) 此処では 引数のデータ型が long と double の2 種類の同じメソッド名 conv を持つメソッドをオーバーロード ( 多重定義 ) して居る 此の様に オーバーロードを利用すると 同じ処理を行うのに 同じメソッド名で 異なるデータ型の引数にも対応する事が出来る -11-

12 コマンドライン引数 ( 計算 ) 下記のコードを テキストエディタで入力し Calculation.java と謂うファイル名で保存した後 コンパイルして 実行する public class Calculation public static void main(string args[]) int n = args.length; System.out.println(" コマンドライン引数の数 :" + n); try if(n!=3) throw new Exception(); double a1 = Double.parseDouble(args[0]); double a2 = Double.parseDouble(args[2]); double ans = 0; char c = args[1].charat(0); switch(c) case '+': ans = a1 + a2; break; case '-': ans = a1 - a2; break; case '*': ans = a1 * a2; break; case '/': ans = a1 / a2; break; default: throw new Exception(); System.out.println(args[0]+" "+args[1]+" "+args[2]+" = "+ans); catch(exception e) System.out.println(" 下記の書式で起動して下さい \n"); System.out.println("java Calculation 数値演算子数値 \n"); System.out.println(" 演算子は + - \"*\" / の 4 種です "); コマンドライン引数の数 : = 5.0 _ args.length: 配列変数の長さ ( 要素数 ) を示すメンバ変数 (Member Variable) 配列のメンバ変数 length は 配列の長さ ( 要素数 ) を示す値を保持して居る 此処では main メソッドの引数 args が String クラスの配列で定義されて居るので 其の個数を確認して居る 猶 main メソッドの引数は コマンドラインからのパラメータを受け取る コマンドラインのパラメータは スペースで区切り複数指定する事が出来る為 其れを受け取る引数には 配列が使用されて居る throw new Exception();: 例外を投げる文 (Statement) 此処では 意図的に例外 Exception を発生させ catch 節に制御を移して居る 此のプログラムは コマンドラインから java Calculation の様に入力して起動する -12-

13 配列の戻り値 下記のコードを テキストエディタで入力し ReturnArray.java と謂うファイル名で保存した後 コンパイルして 実行する /* ============ */ /* 配列の戻り値 */ /* ============ */ public class ReturnArray public static void main(string args[]) String m[] = msgs(); for (int i=0; i<m.length; i++) System.out.print(m[i] + " "); System.out.println(); Welcome to Squid World _ public static String[] msgs() String s[] = "Welcome", "to", "Squid", "World"; return s; public static String[] msgs(): メソッドのプロトタイプ (Prototype) 此処では 引数を取らず String クラスの配列の戻り値を返すメソッド msgs を定義して居る 此処では アクセス制御に public を指定して居る為 此のメソッドは 何処からでも呼び出す事が出来る 亦 static 修飾子も指定して居るので 此のメソッドが定義されて居るクラス 即ち ReturnArray クラスをインスタンス化しなくても 此のメソッドを使用する事が出来る return s;: 戻り値を設定して復帰する文 (Statement) 配列を戻り値と仕て戻す場合には return 文の式に 配列名丈を指定し 大括弧 ( ブラケット :bracket) は付加しない 此処では String クラスの配列 s の配列名 s を指定して居る String m[] = msgs();: 配列を宣言しメソッドの戻り値で初期化する文 (Statement) 此処では String クラスの配列 m を宣言し メソッド msgs を呼び出して 其の戻り値で 配列 m を初期化して居る 此の様に 配列を戻り値とする事も出来る -13-

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java ( 第 3 版 ) 6.7 変数の修飾子 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 Object クラスと Class クラス 6.7 変数の修飾子 (1/3) 変数宣言の直前に指定できる修飾子 全部で 7 種類ある キーワード final private protected public static transient volatile 意味定数として使える変数同じクラスのコードからしかアクセスできない変数サブクラスまたは同じパッケージ内のコードからしかアクセスできない変数他のクラスからアクセスできる変数インスタンス変数ではない変数クラスの永続的な状態の一部ではない変数不意に値が変更されることがある変数

More information

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt) 独習 JAVA 第 3 版 8.4 例外とエラークラス 8.5 throws ステートメント 8.6 独自の例外 Throwable コンストラクタ catch ブロックには Throwable 型のパラメータが必ず 1 つなければならない Throwable コンストラクタ Throwable() Throwable( String message ) message には問題を通知する文字列のメッセージ

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスがインスタンス化されてからメソッドに成る ) # 関数 def test_func(): print('call test_func') #

More information

メソッドのまとめ

メソッドのまとめ メソッド (4) 擬似コードテスト技法 http://java.cis.k.hosei.ac.jp/ 授業の前に自己点検以下のことがらを友達に説明できますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか

More information

オブジェクト指向プログラミング・同演習 5月21日演習課題

オブジェクト指向プログラミング・同演習 5月21日演習課題 オブジェクト指向プログラミング 同演習 5 月 21 日演習課題 問題 1 配列の例外処理例外が発生する可能性のある処理を try で囲み その後に catch で例外を捕捉します 例外処理の終了処理として finally が行われます これは書かなくて自動的に行われます 提出課題 1 (Kadai052301.java) 以下のプログラムは例外処理をしていない ArrayIndexOutOfBoundsException

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の まで処理しますどれにも一致致しない場合 default: から直後の まで処理します 式の結果 ラベル 定数 整数または文字 (byte, short, int,

More information

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド メソッド ( 教科書第 7 章 p.221~p.239) ここまでには文字列を表示する System.out.print() やキーボードから整数を入力する stdin.nextint() などを用いてプログラムを作成してきた これらはメソッドと呼ばれるプログラムを構成する部品である メソッドとは Java や C++ などのオブジェクト指向プログラミング言語で利用されている概念であり 他の言語での関数やサブルーチンに相当するが

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

基本情報STEP UP演習Java対策

基本情報STEP UP演習Java対策 トレーニング編 1. 予約語 extends アクセスレベル class サブクラス名 extends スーパクラス名 { (1) スーパクラス ( 既存のクラス ) を拡張して, サブクラス ( 新しいクラス ) を定義する場合に extends を利用する (2) extends の後ろには, スーパクラスの名前を一つだけ指定できる (3) サブクラスからインスタンスを生成すると, スーパクラスに定義されたインスタンス変数やメソッドがこのインスタンス内部に引き継がれる

More information

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1 Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の までを処理し どれにも一致しない場合 default; から直後の までを処理する 但し 式や値 1 値 2は整数または文字である switch( 式 ) case 値 1: // コロン : です セミコロン ; と間違えないように!!

More information

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文 Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文字 0x0000 ~ 0xffff byte 1バイト整数 - 2 8 ~ 2 8-1 short 2バイト整数

More information

ファイル操作-バイナリファイル

ファイル操作-バイナリファイル ファイル操作 バイナリ ファイルを読み書きする バイナリファイル ( 即ちテキストファイル以外のファイル ) を読み書きするには FileStream クラス (System.IO 名前空間 ) を利用する FileStream クラスはファイル用のストリームをサポートするクラスで有り Stream クラス (System.IO 名前空間 ) の派生クラスの 1 つで有る 基本的には コンストラクタで指定したファイルのストリームに対して

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 3 回目変数 今日の講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能です 変数は 型 ( データ型ともいいます ) と識別子をもちます 2 型 変数に記憶できる値の種類です型は 値の種類に応じて次の 8 種類があり これを基本型といいます 基本型値の種類値の範囲または例 boolean 真偽値 true または

More information

Java講座

Java講座 ~ 第 1 回 ~ 情報科学部コンピュータ科学科 2 年竹中優 プログラムを書く上で Hello world 基礎事項 演算子 構文 2 コメントアウト (//, /* */, /** */) をしよう! インデントをしよう! 変数などにはわかりやすい名前をつけよう! 要するに 他人が見て理解しやすいコードを書こうということです 3 1. Eclipse を起動 2. ファイル 新規 javaプロジェクト

More information

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード] 第 3 回 Java 基本技術講義 クラス構造と生成 33 クラスの概念 前回の基本文法でも少し出てきたが, オブジェクト指向プログラミングは という概念をうまく活用した手法である. C 言語で言う関数に似ている オブジェクト指向プログラミングはこれら状態と振る舞いを持つオブジェクトの概念をソフトウェア開発の中に適用し 様々な機能を実現する クラス= = いろんなプログラムで使いまわせる 34 クラスの概念

More information

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 ( 此処では 10) を代入する丈でなく 2 の配列変数の宣言の様に ブレース { } の中にカンマ区切りで初期値のリストを記述し 配列の各要素に初期値を代入出来る様に成った

More information

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲 Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲を決定します 次の型が利用でき これらの型は特に基本型とよばれます 基本型 値の種類 値の範囲 boolean

More information

GEC-Java

GEC-Java Copyright (C) Junko Shirogane, Waseda University 2019, All rights reserved. 1 プログラミング初級 (Java) 第 14 回継承 白銀純子 第 14 回の内容 継承 オーバーライド ポリモーフィズム Copyright (C) Junko Shirogane, Waseda University 2019, All rights

More information

break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public stati

break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public stati Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の まで処理しますどれにも一致しない場合 default: から直後の まで処理します 式は byte, short, int, char 型 ( 文字または整数 ) を演算結果としますラベルには整数リテラル

More information

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~ .NET プログラマー早期育成ドリル VB 編 付録文法早見表 本資料は UUM01W:.NET プログラマー早期育成ドリル VB 編コードリーディング もしくは UUM02W:.NET プログラマー早期育成ドリル VB 編コードライティング を ご購入頂いた方にのみ提供される資料です 資料内容の転載はご遠慮下さい VB プログラミング文法早見表 < 基本文法 > 名前空間の定義 Namespace

More information

プログラミング基礎I(再)

プログラミング基礎I(再) 山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全

More information

2

2 プログラミング応用演習 b 10 月 5 日演習課題 2016/10/05 PAb 演習課題 プログラム仕様書作成課題 課題クラスを読み 次に示すクラスの仕様書を完成させよ なお 仕様書は クラス 1 つに付き 1 つ作成す る 加えて 図 1 のようなクラス継承の模式図を作成せよ < クラス名 のプログラム仕様書 > 作成者 : 学籍番号 名前 (1) クラスクラス名 : クラス名 説明 : クラスが何を表現しているか

More information

Javaの作成の前に

Javaの作成の前に メディアプロジェクト演習 1 参考資料 Javaとは JavaScript と Java 言語の違い オブジェクト指向 コンストラクタ サーブレット 本資料内のページ番号は, 以下の参考書のページを引用している 高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに プログラミング言語とは? オブジェクト指向とは? Java 言語とは? JavaとJavaScriptの違いとは?

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 3 回目変数 今日の講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能です 変数は 型 ( データ型ともいいます ) と識別子をもちます 2 型 変数に記憶できる値の種類です型は 値の種類に応じて次の 8 種類があり これを基本型といいます 基本型値の種類値の範囲または例 boolean 真偽値 true または

More information

第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイ

第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイ 第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイルの作成方法 コンパイル方法について説明します IDL ファイルの作成にあたっては INTERSTAGE

More information

問題1 以下に示すプログラムは、次の処理をするプログラムである

問題1 以下に示すプログラムは、次の処理をするプログラムである 問題 1 次に示すプログラムは 配列 a の値を乱数で設定し 配列 a の値が 333 より大きく 667 以下の値 の合計値を求めるプログラムである 1 と 2 に適切なコードを記述してプログラムを完 成させよ class TotalNumber { public static void main(string[] args) { int[] a = new int[1000]; // 1 解答条件

More information

メディプロ1 Javaプログラミング補足資料.ppt

メディプロ1 Javaプログラミング補足資料.ppt メディアプロジェクト演習 1 Javaプログラミング補足資料 l Javaとは l JavaScript と Java 言語の違い l オブジェクト指向 l コンストラクタ l 継承 抽象クラス 本資料内のページ番号は, 以下の参考書のページを引用している高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに l プログラミング言語とは? l オブジェクト指向とは?

More information

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt プログラミング言語 3 第 09 回 (2007 年 11 月 26 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 11 月 27 日分と書いてある部分が 本日の教材です

More information

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt プログラミング言語 3 第 09 回 (2007 年 11 月 26 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 11 月 27 日分と書いてある部分が 本日の教材です

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅱ 11 回目スレッド課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) スレッドは 1 つの実行箇所をもつ一連の処理の流れである (2) マルチスレッドで各スレッドの処理は並行して実行される (3) Java はマルチスレッド処理を記述できない (4) 新たにスレッドを生成する場合 Thread クラスを拡張し かつ Runnable インタフェースを実装する必要がある

More information

Javaプログラムの実行手順

Javaプログラムの実行手順 戻り値のあるメソッド メソッドには 処理に使用する値を引数として渡すことができました 呼び出し 側からメソッドに値を渡すだけでなく 逆にメソッドで処理を行った結果の値を 呼び出し側で受け取ることもできます メソッドから戻してもらう値のことを もどりち戻り値といいます ( 図 5-4) 図 5-4. 戻り値を返すメソッドのイメージ 戻り値を受け取ることによって ある計算を行った結果や 処理に成功したか失

More information

た場合クラスを用いて 以下のように書くことが出来る ( 教科書 p.270) プログラム例 2( ソースファイル名 :Chap08/AccountTester.java) // 銀行口座クラスとそれをテストするクラス第 1 版 // 銀行口座クラス class Account String name

た場合クラスを用いて 以下のように書くことが出来る ( 教科書 p.270) プログラム例 2( ソースファイル名 :Chap08/AccountTester.java) // 銀行口座クラスとそれをテストするクラス第 1 版 // 銀行口座クラス class Account String name クラス ( 教科書第 8 章 p.267~p.297) 前回は処理をまとめる方法として メソッドについて学習した 今回はメソッドとその処理の対象となるデータをまとめるためのクラスについて学習する このクラスはオブジェクト指向プログラミングを実現するための最も重要で基本的な技術であり メソッドより一回り大きなプログラムの部品を構成する 今回はクラスにおけるデータの扱いとクラスの作成方法 使用方法について説明していく

More information

Javaセキュアコーディングセミナー2013東京第1回 演習の解説

Javaセキュアコーディングセミナー2013東京第1回 演習の解説 Java セキュアコーディングセミナー東京 第 1 回オブジェクトの生成とセキュリティ 演習の解説 2012 年 9 月 9 日 ( 日 ) JPCERT コーディネーションセンター脆弱性解析チーム戸田洋三 1 演習 [1] 2 演習 [1] class Dog { public static void bark() { System.out.print("woof"); class Bulldog

More information

Prog1_6th

Prog1_6th 2019 年 10 月 31 日 ( 木 ) 実施配列同種のデータ型を有する複数のデータ ( 要素 ) を番号付けして, ひとまとまりの対象として扱うものを配列と呼ぶ 要素 point[0] point[1] point[2] point[3] point[4] 配列 配列の取り扱いに関して, 次のような特徴がある 1. プログラム中で用いる配列変数 ( 配列の本体を参照する参照型の変数 ) は必ず宣言しておく

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 2 回クラス インスタンス メソッド フィールド コンストラクタ ICPC の宣伝 国際大学対抗プログラミングコンテスト 3 人一組のチームでプログラムを書く速さを競う 国内予選 : ネットワーク上で 6 月末 ~7 月頭 アジア地区予選 : 日本国内で秋に開催 世界大会 :2020 年は 6 月にモスクワで 参加登録締切 : 国内予選の 2~3 週間前 今年は

More information

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。 ソフトウェア基礎演習課題 文法理解度確認範囲 問題 1 データ型 ( 変数, データ型 ) 問題 2 制御構造 (switch 文 ) 問題 3 制御構造 (while 文 ) 問題 4 制御構造と配列 ( 総和 ) 問題 5 制御構造と配列 ( 総和, 平均 ) 問題 6 データ型と各種演算子 ( 文字列, 検索 ) 問題 7 クラスの定義 ( メソッドの定義, コンストラクタの定義, キャスト

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double

More information

Microsoft PowerPoint - prog03.ppt

Microsoft PowerPoint - prog03.ppt プログラミング言語 3 第 03 回 (2007 年 10 月 08 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/33 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 10 月 08 日分と書いてある部分が 本日の教材です

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅱ 8 回目抽象クラスとインタフェース課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) 抽象クラスのオブジェクトは生成できる (2) 抽象メソッドとはメソッドの本体が未定義のメソッドである (3) 抽象メソッドをメンバーにもつクラスは抽象クラスである (4) 抽象クラスを拡張してすべての抽象メソッドをオーバーライドすれば サブクラスのオブジェクトを生成できる

More information

C 資料 電脳梁山泊烏賊塾 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に

C 資料 電脳梁山泊烏賊塾 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に於いては 構造体を定義は下記の様に記述する ( 末尾のセミコロンを忘れない様に ) strust Point int x; int y; 上記の様に定義すれば

More information

ICONファイルフォーマット

ICONファイルフォーマット グラフィックス 画像フォーマットエンコーダパラメータ 様々なフォーマットで画像を保存 Bitmap クラスを用いる事でビットマップ JPEG GIF PNG 等様々なフォーマットの画像を読み込み操作する事が出来る 更に Bitmap クラスや Graphics コンテナを用いて描画処理等を施したイメージをファイルに保存する事も出来る 此の時 読み込めるフォーマット同様に保存するフォーマットを選択する事が出来る

More information

プロセス間通信

プロセス間通信 プロセス間通信 プロセス間通信 (SendMessage) プロセス間通信とは 同一コンピューター上で起動して居るアプリケーション間でデータを受け渡し度い事は時々有る Framework には リモート処理 と謂う方法でデータの受け渡しを行なう方法が有る 此処では 此の方法では無く 従来の方法の API を使用したプロセス間通信を紹介する 此の方法は 送信側は API の SendMessage で送り

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public

More information

新・明解Java入門

新・明解Java入門 537,... 224,... 224,... 32, 35,... 188, 216, 312 -... 38 -... 38 --... 102 --... 103 -=... 111 -classpath... 379 '... 106, 474!... 57, 97!=... 56 "... 14, 476 %... 38 %=... 111 &... 240, 247 &&... 66,

More information

Prog1_10th

Prog1_10th 2014 年 6 月 19 日 ( 木 ) 実施 例外処理 Java 言語では, 作成したプログラムを実行する際に, 記述した処理が想定しない事態によって実行できなくなる場合を例外と呼び, その例外への対処, 即ち例外処理が求められる 例外処理を行うための try 文の一般形は次のようになる 例外を発生させる可能性のある処理 catch( 例外のクラス名 1 変数 1 ) 例外に対処する処理 1 catch(

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

第二回独習 Java ゼミ 第二章クラスとメソッド 2.1 メソッドの構造 2.2 静的メソッドと静的変数の概要 2.3 インスタンスメソッドとインスタンス変数の概要 2.4 Integerクラス 2006/04/19 神津健太

第二回独習 Java ゼミ 第二章クラスとメソッド 2.1 メソッドの構造 2.2 静的メソッドと静的変数の概要 2.3 インスタンスメソッドとインスタンス変数の概要 2.4 Integerクラス 2006/04/19 神津健太 第二回独習 Java ゼミ 第二章クラスとメソッド 2.1 メソッドの構造 2.2 静的メソッドと静的変数の概要 2.3 インスタンスメソッドとインスタンス変数の概要 2.4 Integerクラス 2006/04/19 神津健太 2.1 メソッドの構造 メソッドとは プログラムステータメントの集合体 Java の基本的な実行単位 クラスの一部 メソッドの外部にプログラムコードを置いたり クラスの外部にメソッドを置くことはできない

More information

Prog1_2nd

Prog1_2nd 2019 年 10 月 3 日 ( 木 ) 実施浮動小数点数 Java 言語で実数を扱う場合, 実用的な計算には変数のデータ型としては,double 型を用いる 浮動小数点数とは, 実数を表す方式の一つで,2 進数の場合は例えば 1.101 2 3 ( 判り易さの為にここでは 2 や 3 は 10 進数で表記 ) の様な表記法である なお, 第 1 回の教材にあった, 単精度, 倍精度という用語で,

More information

Prog1_15th

Prog1_15th 2017 年 7 月 27 日 ( 木 ) 実施 応用プログラム (3) キー検索 コレクションには, ハッシュテーブルと呼ばれるものがある これは, キー (key) と値 (value) とを組として保持しているものである 通常の配列が添字により各要素にアクセス出来るのに比べて, ハッシュテーブルではキーを用いて各値にアクセスすることが出来る キー及びそのキーから連想される値の組を保持していることから,

More information

GEC-Java

GEC-Java プログラミング初級 (Java) 第 12 回メッセージのやりとり 白銀純子 Copyright (C) Junko Shirogane, Waseda University 2018, All rights reserved. 1 第 12 回の内容 メッセージのやりとり Copyright (C) Junko Shirogane, Waseda University 2018, All rights

More information

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク 2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパークラス利用法:ArrayList... 5 例外:Exception... 6 ぬるぽ... 6 例外処理:try-catch-finaly...

More information

プログラミングA

プログラミングA プログラミング A 第 10 回 演習 2015 年 6 月 29 日 東邦大学金岡晃 本日の内容 中間テストの解説 演習 1 2015/6/29 プログラミング A 中間テスト解説 : 問 1 < 問 1> 下記の命令が実行された後の a の値を書きなさい ( 省略 ). int a=13; 答え : 13 2 中間テスト解説 : 問 2 < 問 2> 下記の命令が実行された後の a の値を書きなさい

More information

Microsoft PowerPoint - chap10_OOP.ppt

Microsoft PowerPoint - chap10_OOP.ppt プログラミング講義 Chapter 10: オブジェクト指向プログラミング (Object-Oriented Programming=OOP) の入り口の入り口の入り口 秋山英三 F1027 1 例 : 部屋のデータを扱う // Test.java の内容 public class Test { public static void main(string[] args) { double length1,

More information

Javaプログラマー早期育成ドリル ~コードリーディング編~ 解答

Javaプログラマー早期育成ドリル ~コードリーディング編~ 解答 Java プログラマー早期育成ドリルコードリーディング編 解答 2 版 2017 年 1 月 本資料は UFN25W:Javaプログラマー早期育成ドリルコードリーディング編 をご購入頂いた方にのみ提供される資料です 資料内容の転載はご遠慮ください 本解答は UFN25W:Javaプログラマー早期育成ドリルコードリーディング編 の初版および2 版に対応しています コラム一覧 このドリルの解答では すべての構文の紹介はしていません

More information

Make the Future Java FY13 PPT Template

Make the Future Java FY13 PPT Template 1 OJCP Silver SE 7 資格試験の傾向と対策 日本オラクル株式会社オラクルユニバーシティ 2 以下の事項は 弊社の一般的な製品の方向性に関する概要を説明するものです また 情報提供を唯一の目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメント ( 確約 ) するものではないため 購買決定を行う際の判断材料になさらないで下さい

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 9 回 メソッド (3) 授業の前に自己点検 以下の質問に答えられますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか 戻り値はどのように利用しますか 変数のスコープとは何ですか

More information

1/8 ページ Java 基礎文法最速マスター Java Javaの文法一覧です 他の言語をある程度知っている人はこれを読めばJavaの基礎をマスターしてJavaを書くことができるようになっています 簡易リファレンスとしても利用できると思いますので これは足りないと思うものがあれば教えてください 1. 基礎 class の作成プログラムはclassに記述します たとえばSampleという名前のclassを作る場合

More information

JEB Plugin 開発チュートリアル 第4回

JEB Plugin 開発チュートリアル 第4回 Japan Computer Emergency Response Team Coordination Center 電子署名者 : Japan Computer Emergency Response Team Coordination Center DN : c=jp, st=tokyo, l=chiyoda-ku, email=office@jpcert.or.jp, o=japan Computer

More information

ÿþ˜u#u·0¹0Æ0à0

ÿþ˜u#u·0¹0Æ0à0 10. パッケージ, 例外処理など 1. 例外処理プログラムが正常に期待される以外の処理が行われたときに, 例外が発生 ( エラーの情報の発生 ) する処理をプログラムにさせること例外に対応した処理をプログラムにさせること 例外もオブジェクトである 多数の例外がある ( 例外クラスが存在し, 例外にあわせてオブジェクトが生成される ) 例外処理の方法 try{ 1エラーが発生した場合, 例外オブジェクトが投げられる通常の処理

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 4 回目演算子 今日の講義で学ぶ内容 演算子とオペランド 式 様々な演算子 代表的な演算子の使用例 演算子とオペランド 演算子 演算の種類です例えば + - * / 掛け算の記号は ではなく *( アスタリスク ) を使います割り算の記号は ではなく /( スラッシュ ) を使います オペランド 演算の対象です例えば 5( 値 ) num( 変数 ) 式 演算子とオペランドの組み合わせにより構成される数式です式は演算結果をもちます

More information

Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 (

Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 ( Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 ( 引数 ) x が決まれば F(x) が決まる これを応用して 複雑な処理も 外面的にはひと固まりの処理として扱う

More information

Prog2_9th

Prog2_9th 2013 年 11 月 21 日 ( 木 ) 実施例外処理 Java 言語では, 作成したプログラムを実行する際に, 記述した処理が想定しない事態によって実行できなくなる場合を例外と呼び, その例外への対処, 即ち例外処理が求められる これまでの教材に登場した例外の中で,IOException はコンパイラがチェックするため, 例外処理を必ず記述しなければコンパイルが出来ないものであるのに対して,ArithmeticException

More information

デジタル表現論・第6回

デジタル表現論・第6回 デジタル表現論 第 6 回 劉雪峰 ( リュウシュウフォン ) 2016 年 5 月 16 日 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 6 回 2016 年 5 月 16 日 1 / 16 本日の目標 Java プログラミングの基礎配列 ( 復習 関数の値を配列に格納する ) 文字列ファイルの書き込み 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 6 回 2016 年

More information

データアダプタ概要

データアダプタ概要 データベース TableAdapter クエリを実行する方法 TableAdapter クエリは アプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドと仕て公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依り実行出来る TableAdapter

More information

JAVA入門

JAVA入門 JAVA 入門後期 10 情報処理試験例題解説 H14 年度秋問 8 次の Java プログラムの説明及びプログラムを読んで, 設問に答えよ プログラムの説明 ディジタル論理回路シミュレータを作成するためのクラスとテスト用クラスである (1) ゲートを表す抽象クラス Gate のサブクラスとして, NOT ゲートを表すクラス NotGate 及び AND ゲートを表すクラス AndGate を定義する

More information

ファイル操作

ファイル操作 ファイル操作 TextFieldParser オブジェクト ストリームの読込と書込 Microsoft.VisualBasic.FileIO 名前空間の TextFieldParser オブジェクトは 構造化テキストファイルの解析に使用するメソッドとプロパティを備えたオブジェクトで有る テキストファイルを TextFieldParser で解析するのは テキストファイルを反復処理するのと同じで有り

More information

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説 Java セキュアコーディングセミナー東京第 3 回入出力と例外時の動作 演習解説 2012 年 11 月 11 日 ( 日 ) JPCERT コーディネーションセンター脆弱性解析チーム戸田洋三 1 Hands-on Exercises コンパイルエラーに対処しよう ファイルからのデータ入力を実装しよう 2 Hands-on Exercise(1) サンプルコードの コンパイルエラーに対処しよう 3

More information

Microsoft PowerPoint - lec06 [互換モード]

Microsoft PowerPoint - lec06 [互換モード] 内 容 Ⅶ. クラスの定義 クラス定義の基本 フィールドの定義 メソッド定義 例題 : 円クラスのフィールドとメソッドの定義 コンストラクタ 例題 :Circle2を使ったアプレット 1 2 クラス定義の基本 オブジェクト指向のプログラム プログラム実行時に登場するオブジェクトの性質や挙動を記述する オブジェクトの性質や挙動を記述したものが クラス である Java プログラムを書くとはクラスを定義すること

More information

第 1 章 Java 言語について ( オブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐 ) Java 言語の概要とオブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐について理解し, プログラム作成を行う 1.1 Java 言語の概要 JAVA は Sun Microsystems

第 1 章 Java 言語について ( オブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐 ) Java 言語の概要とオブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐について理解し, プログラム作成を行う 1.1 Java 言語の概要 JAVA は Sun Microsystems 第 1 章 Java 言語について ( オブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐 ) Java 言語の概要とオブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐について理解し, プログラム作成を行う 1.1 Java 言語の概要 JAVA は Sun Microsystems が開発したプログラミング言語であり, たとえば, 一般ユーザが使うアプリケーションを始めとして, ネットワークを介したコミュニケーションツールや

More information

12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある インターネットアドレス

12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある   インターネットアドレス Java 独習第 3 版 12.1 インターネットアドレス 12.2 サーバーソケットとソケット 2006 年 7 月 5 日 ( 水 ) 南慶典 12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある www.mycompany.com

More information

情報実習Ⅱ

情報実習Ⅱ 情報実習 Ⅱ 第 7 回 ( これまでの復習 ) 課題資料 Java のクラスの概形 クラス フィールドコンストラクタメソッド main メソッドローカル変数宣言オブジェクト生成オブジェクトへのメッセージ ( メソッド呼び出し ) 変数 : 基本型, 参照型 これまでの 習得事項 まだ初歩的な内容だけだが これらを利用するだけでも多くの実用的なプログラムが記述できる キーボード入力 : Scanner

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 8 回メソッド (2) 授業開始前に自己点検 前回までの必須課題はすべてできていますか 前回までの学習項目であいまいな所はありませんか 理解できたかどうかは自分自身の基準をもとう Java 1 第 8 回 2 前回のテーマ メソッドとは いくつかの命令の列を束ねて 一つの命令として扱えるようにしたもの 今回学ぶメソッドの役割は その他のプログラミング言語では関数またはサブルーチンと呼ばれることがある

More information

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy オブジェクト指向プログラミング演習 2010/10/27 演習課題 スレッド ( その 2) 同期処理 結果不正 デッドロック 前回のスレッドの演習では 複数のスレッドを実行し 一つのプログラムの中の違う処理を同時に実行し た ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする )

More information

デジタル表現論・第4回

デジタル表現論・第4回 デジタル表現論 第 4 回 劉雪峰 ( リュウシュウフォン ) 2016 年 5 月 2 日 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 1 / 14 本日の目標 Java プログラミングの基礎 出力の復習 メソッドの定義と使用 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 2 / 14 出力 Systemoutprint()

More information

Microsoft PowerPoint - CproNt02.ppt [互換モード]

Microsoft PowerPoint - CproNt02.ppt [互換モード] 第 2 章 C プログラムの書き方 CPro:02-01 概要 C プログラムの構成要素は関数 ( プログラム = 関数の集まり ) 関数は, ヘッダと本体からなる 使用する関数は, プログラムの先頭 ( 厳密には, 使用場所より前 ) で型宣言 ( プロトタイプ宣言 ) する 関数は仮引数を用いることができる ( なくてもよい ) 関数には戻り値がある ( なくてもよい void 型 ) コメント

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 基本 Java プログラミング演習 第 13 回 担当 : 植村 今後の予定 7/15 第 13 回 今回 7/22 第 14 回 小テスト ( クラス ) 7/29 第 15 回 総まとめテスト レポート提出 期末テストの時間割に Java のテストの欄がありますが無視してください 再テストはまた別途連絡いたします 2 CHAPTER 11 はじめてのクラス前回の復習 クラスクラスを構成する要素

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

GUIプログラムⅣ

GUIプログラムⅣ GUI プログラム Ⅳ 画像指定ウィンドウの生成 ファイル名 :awtimage.java import java.awt.*; import java.awt.event.*; public class awtimage extends Frame // コンポーネントクラスの宣言 Button btnbrowse; Label lblcaption7; TextField txtimage; //

More information

5 継承とは クラス図 98 7 参照の自動型変換 参照の自動型変換 クラス図の見方 クラス図の書き方 継承 継承してクラスを作る インスタンスの初期化 継承の効果を確認する

5 継承とは クラス図 98 7 参照の自動型変換 参照の自動型変換 クラス図の見方 クラス図の書き方 継承 継承してクラスを作る インスタンスの初期化 継承の効果を確認する 3 クラスの仕組み 51 3.1 他のクラスからのアクセスを制限する 52 1.private と public 52 1 クラスの作り方 1 1.1 オブジェクトとは 2 1. オブジェクトって何? 2 2. データの集まりをオブジェクトにする 3 3. まずクラスを作る 4 4. クラスの作り方 5 5. 基本機能として必要なもの 6 1.2 クラスを作る 8 1. クラスを作る手順 8 2.

More information

プラグイン

プラグイン プラグイン プラグイン詳細 2 ~ プラグイン機能を持つテキストエディタの作成 ~ はじめに Adobe Photoshop や Becky! Internet Mail 等のアプリケーションでは プラグイン ( 又は アドイン エクステンション 等 ) と呼ばれるプログラムをインストールする事に依り 機能を拡張する事が出来る 此の記事では此の様なプラグイン機能を持ったアプリケーションの作り方を プラグイン対応のテキストエディタを作成する事に依り

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 4 回 繰り返し (for ループ ) 授業開始前に ログオンして待機して ください Java 1 第 4 回 2 不要ファイルの掃除 前回デスクトップにファイルをダウンロードした場合 次のものを削除してください week03.zip デスクトップにファイルを置きすぎると コンピュータをシャットダウンできなくなります Java 1 第 4 回 3 授業を始めます 前回の課題は

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 6 回目 if 文と if else 文 今日の講義で学ぶ内容 関係演算子 if 文と if~else 文 if 文の入れ子 関係演算子 関係演算子 ==,!=, >, >=,

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラマー勉強会 1 回 basic.h 補足 [ 修飾子 ] const 付けた変数は初期化以外で値を設定することができなくなる 定数宣言に使う unsigned 付けた変数は符号がなくなり 正の値しか設定できない [ 条件コンパイル ] #ifdef M ここ以前に M がマクロとして定義されていれば ここ以下をコンパイルする #ifndef M ここ以前に M というマクロが定義されていなければ

More information

プログラミング実習I

プログラミング実習I プログラミング実習 I 05 関数 (1) 人間システム工学科井村誠孝 m.imura@kwansei.ac.jp 関数とは p.162 数学的には入力に対して出力が決まるもの C 言語では入出力が定まったひとまとまりの処理 入力や出力はあるときもないときもある main() も関数の一種 何かの仕事をこなしてくれる魔法のブラックボックス 例 : printf() 関数中で行われている処理の詳細を使う側は知らないが,

More information

構造体

構造体 構造体 Byte 配列 構造体とコピーする方法 構造体とバイト配列の変換を行うには System.Runtime.InteropServices 名前空間をインポートして置くと便利で有る Imports System.Runtime.InteropServices using System.Runtime.InteropServices; 下記の 3 種類の構造体にバイト配列の値を格納した場合に付いて検証する

More information

Prog2_10th

Prog2_10th 2013 年 11 月 28 日 ( 木 ) 実施 ファイル操作とディレクトリ操作今回の授業では,Java 言語でのファイル操作とディレクトリ操作とについて学習する ファイル操作ファイル操作は,C 言語プログラミングで学んだように, 次の順序で行う 1) ストリームを開く 2) ストリームからの入力, ストリームへの出力 3) ストリームを閉じる Java 言語では, ファイル操作に関係するクラスが複数用意されている

More information

Programming-C-9.key

Programming-C-9.key プログラミングC 第9回 例外 スレッド 白石路雄 2 finally try{ ( 例外が発生するかもしれない処理 ) catch(exception のクラス名 e){ ( 例外が発生した時の処理 ) finally{ ( 例外の発生の有無に関わらず 必ず行う処理 ) 3 Integer.parseInt() NumberFormatException

More information

Microsoft PowerPoint - prog04.ppt

Microsoft PowerPoint - prog04.ppt プログラミング言語 3 第 04 回 (2007 年 10 月 15 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/33 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 10 月 15 日分と書いてある部分が 本日の教材です

More information

ファイル入出力Ⅰ

ファイル入出力Ⅰ ファイル入出力 Ⅰ 今回の課題項目 ファイル入出力 ( 概要 手順 ) ファイル入出力 ( 使用クラス 使用コンストラクタ ) ファイル入出力 ( 文字コード処理 ) ファイル入出力 ( ファイル情報の取得 ) ファイル入出力 ( バイナリファイルの入出力処理 ) 今回の重点項目 ファイル入出力の基本 ( 概要 手順 使用クラス ) ファイル入出力の実践 ( ファイル情報の取得 バイナリファイルの操作

More information

関数の中で宣言された変数の有効範囲はその関数の中だけです さっきの rectangle _s で宣言されている変数 s は他の関数では使用できません ( 別の関数で同じ名前の変数を宣言することはできますが 全く別の変数として扱われます このように ある関数の中で宣言されている変数のことをその関数の

関数の中で宣言された変数の有効範囲はその関数の中だけです さっきの rectangle _s で宣言されている変数 s は他の関数では使用できません ( 別の関数で同じ名前の変数を宣言することはできますが 全く別の変数として扱われます このように ある関数の中で宣言されている変数のことをその関数の ソフトゼミ A 第 6 回関数 はじめに今まで printf や scanf など 予め用意されていた関数を使ってきました これら標準で用意されている関数を作ることは ( 特に入出力系は ) とても難しいのですが 関数は自作することができます というわけで 今回は自分で関数を定義して使っていく方法について学びましょう 関数とは C 言語での 関数 は 処理の途中で呼び出すことによって 定義されている

More information

関数の動作 / printhw(); 7 printf(" n"); printhw(); printf("############ n"); 4 printhw(); 5 関数の作り方 ( 関数名 ) 戻り値 ( 後述 ) void である. 関数名 (

関数の動作 / printhw(); 7 printf( n); printhw(); printf(############ n); 4 printhw(); 5 関数の作り方 ( 関数名 ) 戻り値 ( 後述 ) void である. 関数名 ( 概要 プログラミング 関数 http://www.ns.kogakuin.ac.jp/~ct40/progc/ A- 関数の作り方を学ぶ 関数名, 引数, 戻り値 プログラミング で最も重要な事項 関数 プログラミング で最も重要な事項 制御 (for, if) プログラミング で最も重要な事項 ポインタ A- 関数名 引数 戻り値 E- E-4 関数の概要 0/ 関数とは, 複数の処理をひとまとめにしたもの.

More information

コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?

コンピュータ中級B ~Javaプログラミング~  第3回 コンピュータと情報をやりとりするには? Copyright (C) Junko Shirogane, Waseda University 2016, All rights reserved. 1 プログラミング初級 (Java) 第 4 回コンピュータと情報をやりとりするには? 白銀純子 Copyright (C) Junko Shirogane, Waseda University 2016, All rights reserved.

More information

2

2 次の課題 1~7 の を埋めてプログラムを完成させよ 1. 整数型の配列に格納されたデータの総和を計算し, その結果を出力するプログラムである このプログラムの処理手順を次に示す 1 配列の格納するデータの個数 n (n>0) を入力する 2n の大きさで配列を確保する 3 配列に n 個分のデータを格納する 4 配列の総和を求める 5 総和を出力する import java.io.*; public

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 1 第 3 回 条件分岐 授業開始前に ログオンして待機して ください Java 1 第 3 回 2 不要ファイルの掃除 前回デスクトップにファイルをダウンロードした場合 次のものを削除してください week02.zip デスクトップにファイルを置きすぎると コンピュータをシャットダウンできなくなります Java 1 第 3 回 3 授業を始めます 前回の課題は うまくできましたか?

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅱ 7 回目オーバーライド課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) スーパークラスのメソッドと同じ名前 戻り値 引数の個数と型をもつメソッドをサブクラスで宣言すると これらのメソッドはオーバーライドの関係になる (2) メソッドのオーバーライドとは スーパークラスのメソッドに代わってサブクラスのメソッドが実行される機能のことである (3) スーパークラス型の変数にサブクラスのオブジェクトは代入できない

More information

ハッシュテーブル

ハッシュテーブル ハッシュテーブル ハッシュテーブル ( 連想配列 ) を使う ハッシュテーブルとは キー (key) と値 (value) のペアを保持して居るコレクションで有る 通常の配列がインデックス番号に依り各値 ( 各要素 ) にアクセス出来るのに比べて ハッシュテーブルでは インデックス番号の代わりにキーを用いて 其の各値にアクセスする事が出来る キーと 其のキーから連想される ( 対応付けられて居る )

More information

スライド 1

スライド 1 第 4 回データの入出力 情報科学部情報メディア学科 鈴木基之 1 前回の演習の答え class CalcMean { public static void main(string[] args){ int a = 10, b = 15; double f; f = ( a + b ) / 2; System.out.println(f); f = ( a + b ) / 2.0; System.out.println(f);

More information

** 平成 16 年度 FE 午後問題 Java** 示現塾プロジェクトマネージャ テクニカルエンジニア ( ネットワーク ) など各種セミナーを開催中!! 開催日 受講料 カリキュラム等 詳しくは 今すぐアクセス!! 平成 16

** 平成 16 年度 FE 午後問題 Java** 示現塾プロジェクトマネージャ テクニカルエンジニア ( ネットワーク ) など各種セミナーを開催中!! 開催日 受講料 カリキュラム等 詳しくは   今すぐアクセス!! 平成 16 平成 16 年度春期 FE 午後問題 Java 問 8 次の Java プログラムの説明及びプログラムを読んで, 設問に答えよ プログラムの説明 このプログラムは, 数量の単位変換を行う共通機能を提供するクラス群と, それらのテストプログラムからなる テストプログラムでは, セルシウス温度 ( セ氏温度, ) 及びカ氏温度 ( F ) の変換を行うクラスを利用する (1) インタフェース Converter

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅱ 3 回目クラスの機能 (1) アクセス制限 オーバーロード課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) クラスの private メンバは そのクラスからのみアクセス可能なメンバである (2) 一般に クラスのフィールドはどこからでもアクセスできるように public メンバで宣言すべきである (3) クラスは private メンバと public

More information