JAVA入門.

Slides:



Advertisements
Similar presentations
アルゴリズムとプログラミン グ (Algorithms and Programming) 第6回:クラスとインスタンス クラスの宣言 アクセス修飾子 インスタンスの生成 (new キーワード) this キーワード フィールドとメソッドの実際の定義と使い 方 クラスの宣言 アクセス修飾子 インスタンスの生成.
Advertisements

山元進.  for 文  while 文  do ~ while 文  文のネスト  break 文  continue 文.
プログラミング第5回 1 while ループ 文字列の操作
プログラミング実習 1 ・ 2 ク ラス 第 2 週目 担当教員 : 渡邊 直樹. 課題 2 ● 2 × 2型行列の固有値, 固有ベクトルを求め る EigMatrix.java というプログラムを作成せ よ。 ● 行列の各要素はコマンド・プロンプトから入力 ● 計算した結果もコマンド・プロンプトに表示.
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
応用理工学情報処理 第1回(2015年10月 5日) 月曜日担当 前島展也 Manaba
プログラミング基礎I(再) 山元進.
プログラミング基礎I(再) 山元進.
Applet 岡部 祐典 鈴木 敬幸.
プログラミング基礎I(再) 山元進.
アルゴリズムとプログラミング (Algorithms and Programming)
基礎プログラミングおよび演習 第9回
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
プログラミング基礎I(再) 山元進.
C言語 第2講 生物機能制御学講座 濱田 農学部7号館209室.
プログラミング入門2 第1回 導入 情報工学科 篠埜 功.
プログラミング基礎I(再) 山元進.
情報基礎A 第10週 プログラミング入門 VBAの基本文法2 データ型・If ~Then~Else
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
String - 文字列 2009年10月9日 7ADD2116 佐藤洋輔.
プログラミング実習 1・2 クラス 第 1 週目 担当教員:  渡邊 直樹.
プログラミングIII演習 第1回目.
1.12 式における型変換 1.13 代入における型変換 1.14 コメント 10月31日(金) 発表者:藤井丈明
第20章 Flyweight ~同じものを共有して無駄をなくす~
情報処理技法 (Javaプログラミング)2 第2回 前期の復習(2)
JAVA入門② 変数と型 式と演算子 制御文.
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
プログラミング言語入門 手続き型言語としてのJava
第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション.
暗号技術 ~JAVAプログラム③~ (7週目)
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
第二回 VB講座 電卓を作ろう.
プログラミング応用 printfと変数.
アルゴリズムとプログラミング (Algorithms and Programming)
プログラムはどこに保存され,どこで実行されるのか?
暗号技術 ~JAVAプログラム①~ (5週目)
プログラミング演習I 2003年5月7日(第4回) 木村巌.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
第1回 プログラムの基本 他人が読めるプログラムを書く.
プログラムはどこに保存され,どこで実行されるのか?
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
C言語 はじめに 2016年 吉田研究室.
オブジェクト プログラミング 第2回 プログラムの基本.
C言語ファミリー C# 高級言語(抽象的) Java オブジェクト指向 C++ C 機械語(原始的)
アルゴリズムとプログラミング (Algorithms and Programming)
地域情報学 C言語プログラミング 第2回 変数・配列、型変換、入力 2017年10月20日
プログラミング言語論 第十一回 理工学部 情報システム工学科 新田直也.
計算機プログラミングI 木曜日 1時限・5時限 担当: 増原英彦 第1回 2002年10月10日(木)
計算機プログラミングI 第3回 プリミティブ値 クラスメソッド クラス変数 式と演算 変数の利用
アルゴリズムとプログラミング (Algorithms and Programming)
暗号技術 ~JAVAプログラム②~ (6週目)
第5回 プログラミングⅡ 第5回
JAVA入門⑥ クラスとインスタンス.
標準入出力、変数、演算子、エスケープシーケンス
オブジェクト指向言語論 第二回 知能情報学部 新田直也.
情報実習I (第1回) 木曜4・5限 担当:北川 晃.
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
情報処理Ⅱ 第2回 2004年10月12日(火).
第3回簡単なデータの入出力.
プログラミング入門2 第5回 配列 変数宣言、初期化について
情報処理Ⅱ 小テスト 2005年2月1日(火).
printf・scanf・変数・四則演算
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
第1章 文字の表示と計算 printfと演算子をやります.
計算機プログラミングI 第10回 2002年12月19日(木) メソッドの再定義と動的結合 クイズ メソッドの再定義 (オーバーライド)
計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

JAVA入門

ー簡単JAVA説明①ー 1.JAVA言語のしくみ 2.JAVA作成ツール JDK クラスファイル 機械語 ソースファイル コンパイラ インタプリタ

ー簡単JAVA説明①ー 3.コード作成 1.        というソースファイルを作成する。 2.「.java」を「拡張子」と言う。 ***.java

ー簡単JAVA説明①ー 4.ソースファイル作成上の注意点 ①半角入力 ②大文字と小文字は区別される ③空白はスペース、タブ ④改行はENTER ⑤コロンセミコロンに注意 ⑥かっこに注意 ⑦0とo、1とlの区別

ー簡単JAVA説明②ー 1.コンパイル ソースファイル クラスファイル コンパイラ

ー簡単JAVA説明②ー 2.コンパイル方法 ①ソースの保存(***.java) ②ソースのある場所へ移動 ③javac  ***.java でコンパイル実行 ソース保存(***.java) → コンパイル(javac ***.java)

ー簡単JAVA説明②ー 3.プログラム実行 ① 場所はクラスファイルの場所 ② java ++++ で実行、+++はクラス名 ① 場所はクラスファイルの場所 ② java ++++ で実行、+++はクラス名 クラスファイル → プログラム実行            ↑          インタプリタ

ー簡単JAVA説明③ー 1.JAVAの基本形 class XXX { /* 【main()メソッドのブロック】 */ public static void main(String[] args) {     /* ここに処理を書く */ }

ー簡単JAVA説明③ー 具体的には・・・・ 例1. class Sample101 { public static void main(String[] args) { System.out.println("ようこそJavaへ!"); }

ー簡単JAVA説明③ー 例2. class Hello { public static void main(String[] args) { System.out.println(" Hello Java"); }

ー簡単JAVA説明③ー 出力結果 例1.ようこそJavaへ! 例2. Hello Java

ー簡単JAVA説明④ー 1.画面出力コード System.out.println(""); 構文 class クラス名 { public static void main(String[] args) { System.out.println("出したい文字"); }

ー簡単JAVA説明④ー 2.画面出力コードの注意点 ①セミコロンを忘れずに! ②カンマで囲む!

ー簡単JAVA説明④ー 3. 画面に文字を出力するコードの具体例 class Sample01 { public static void main(String[] args) { System.out.println("ようこそJavaへ!"); System.out.println("Javaをはじめましょう!"); }

ー簡単JAVA説明④ー 4. System.out.print()のサンプル 【Sample01とSample02の違いを見つけよう】 class Sample02 { public static void main(String[] args) { System.out.print("ようこそJavaへ!"); System.out.print("Javaをはじめましょう!"); }

ー簡単JAVA説明④ー 出力結果 Sample01 ようこそJavaへ! Javaをはじめましょう! Sample02

ー簡単JAVA説明⑤ー 1.コード //画面に文字を出力するコード class Sample01 { コメント 1.コード //画面に文字を出力するコード class Sample01 { public static void main(String[] args) { System.out.println("ようこそJavaへ!"); System.out.println("Javaをはじめましょう!"); }  main() メソッド

ー簡単JAVA説明⑤ー 2.クラス クラスとは?→枠組み、型 例. たいやきの型=クラス(型) 生地、あんこ=インスタンス 例. たいやきの型=クラス(型)    生地、あんこ=インスタンス    たいやき=オブジェクト(実体) class Sample01 { } クラス名 クラス

ー簡単JAVA説明⑤ー 3. main() メソッド ・メソッド=機能(=処理内容) ・ main() メソッド →処理の開始~終了 public static void main(String[] args) { } main()メソッド

ー簡単JAVA説明⑤ー 4.コード作成上の注意 について ①処理は行いたい順に上から記述する! ②セミコロンを忘れずに! メソッド内の2文  System.out.println("ようこそJavaへ!"); System.out.println("Javaをはじめましょう!"); について ①処理は行いたい順に上から記述する! ②セミコロンを忘れずに! ③インデントを意識! ④コメントを有効活用!

ー簡単JAVA説明⑤ー ③インデントと④コメントについて //画面に文字を出力するコード class Sample01 { public static void main(String[] args) { System.out.println("ようこそJavaへ!"); System.out.println("Javaをはじめましょう!"); } コメント インデント

ー簡単JAVA説明⑤ー 4.見やすいコードを作成するために コードでは、空白、改行はOK そこで、コードを見やすくするため   そこで、コードを見やすくするため   ①行ごとにインデント(字下げ)を行う   ②入れ子構造にする。

ー簡単JAVA説明⑤ー 5.コメント メソッド等で何を行っているのか説明文 を入れておくことが望ましい。 コメントは   メソッド等で何を行っているのか説明文   を入れておくことが望ましい。 コメントは ① // 画面に文字を出力するコード ② /* 画面に文字を出力するコード */ という2種類ある。 ①は1行、②は複数行で用いる。

簡単JAVA説明⑥ ★文字リテラル・文字列リテラル・数値リテラル 次のSample3を実行 class Sample3 { public static void main(String[] args) { //文字リテラル System.out.println('A'); //文字列リテラル System.out.println("ようこそJavaへ!"); //数値リテラル System.out.println(123); } }

簡単JAVA説明⑥ 実行結果 A ようこそJavaへ! 123

簡単JAVA説明⑥ 1.リテラル 2.リテラルの種類 コード中の 'A' 、 "ようこそJavaへ!" 、123 という文字、数値の表記を   コード中の    'A' 、 "ようこそJavaへ!" 、123   という文字、数値の表記を    「リテラル」   という。 2.リテラルの種類 ①文字リテラル ②文字列リテラル ③数値リテラル

簡単JAVA説明⑥ ①文字リテラル・・・コード中の1文字の表記 例 'A' 、 'a' 、'あ' ' ' でくくる。    ' ' でくくる。 ②文字列リテラル・・・コード中の文字列の表記 例  "ようこそJavaへ! " 、 "Hello"    " " でくくる。 ③数値リテラル・・・コード中の数値の表記 例 124(整数)、2.1(小数)    そのまま表記

簡単JAVA説明⑥ 3.応用 ●1文字は 'A', "A" の双方が可能 ●2文字以上 は"ABC" のみが可能 ●数字は123 " 123 " 双方可能 問1 2つの違いは? 問2 ‘123’は? 問3 全角の数字123 を表示するには

簡単JAVA説明⑥ 4.リテラルの結論 ①文字(列)は' ' 、" " でくくる。 ②数字は" "とか' ' を用いないでそのまま記述。 ③そのままを出力したいときは" " でくくる。  

簡単JAVA説明⑥ 5.エスケープシーケンス 問 ' や " を出力するには? 答え ¥ ' 、¥ " と記述  問  ' や  " を出力するには?   答え ¥ ' 、¥ " と記述  ¥● という形で特殊な文字、操作を記述  つまり 【文字列リテラルや文字リテラルの中で特殊な文字を使うための記述法】 を    「エスケープシーケンス」  という。  表2-1参照

簡単JAVA説明⑥ 6.エスケープシーケンスの例 class Sample41 { public static void main(String[] args) { //「'(シングルクォート)」の表示 System.out.println("シングルクォートを表示します。:\'"); //「"(ダブルクォート)」の表示 System.out.println("ダブルクォートを表示します。:\""); }

簡単JAVA説明⑥ 実行結果 シングルクォートを表示します。:' ダブルクォートを表示します。:"

簡単JAVA説明⑥ 7.2進数と8進数と16進数 2進数 10=2×1+0=2(10進数) 2進数 10=2×1+0=2(10進数) 8進数 10=8×1+0=8(10進数)→ 010(JAVA表記) 16進数 10=16×1+0=16(10進数)→ 0x10(JAVA表記) => Sample6

簡単JAVA説明⑥ class Sample6 { public static void main(String[] args) { // 10進表記の数値リテラル System.out.println("10進数の10は" + 10 + "です。"); // 8進表記の数値リテラル System.out.println("8進数の10は" + 010 + "です。"); // 16進表記の数値リテラル System.out.println("16進数の10は" + 0x10 + "です。"); System.out.println("16進数のFは" + 0xF + "です。"); }

簡単JAVA説明⑥ 実行結果 10進数の10は10です。 8進数の10は8です。 16進数の10は16です。 16進数のFは15です。

簡単JAVA説明⑥ まとめ(JAVA説明①~⑥) ・JAVA言語のしくみ ・コンパイル ・プログラムの実行 ・JAVAの基本形 ・コード ・クラス ・リテラル ・エスケープシーケンス

簡単JAVA説明⑦ ★変数と型 1.変数とは? ・中高(数学等)では 変数=x?つまり 変数="任意の値をとり得る文字"   ・中高(数学等)では    変数=x?つまり   変数="任意の値をとり得る文字"   ・プログラミング(JAVA)では   変数=値を入れておく入れ物

簡単JAVA説明⑦ 2.識別子  変数の名前として使える文字・数字を    「識別子」   と呼ぶ。

簡単JAVA説明⑦ 3.識別子(変数)の制限 ①英字、数字、アンダースコア、$を用いる 例.Num、Num1、Num_1、Num$1   ①英字、数字、アンダースコア、$を用いる 例.Num、Num1、Num_1、Num$1  ②長さはいくらでもよい。 ③予約語は使えない。    ④数字からははじめない。     1Num、100%Num は不可。    ⑤大文字と小文字は区別される。

簡単JAVA説明⑦ ★型 ①.変数には値を記憶させる。 ②.値には「種類」がある。 ③.「種類」のことを「型」という。  ★型 ①.変数には値を記憶させる。 ②.値には「種類」がある。 ③.「種類」のことを「型」という。 ④. 変数は必ず型を指定する必要がある。

簡単JAVA説明⑦ 1.型のいろいろ a.boolean ・・・true(真) false(偽)  b. char ・・・ 2バイト文字(\u0000~\uffff)  c. byte ・・・1バイト整数 (-128~127)  d. short・・・2バイト整数 (-32768~ 32767=2^15-1)  e. int ・・・4バイト整数 (-2147483648~ 2147483647=2^31-1)

簡単JAVA説明⑦ f. long ・・・8バイト整数 (ー9223372036854775808~  (ー9223372036854775808~     9223372036854775807=2^63-1) g. float・・・4バイト単精度浮動小数点数        (-128~127) h. double・・・8バイト単精度浮動小数点数

簡単JAVA説明⑦ ★変数の宣言 1.変数の宣言 「変数に名前をつける。」 「変数は必ず型を指定する必要がある。」 この2つをコード中で行うことを  「変数を宣言する」 という。 ※イメージとしては  「入れ物を用意し名前を付けておく」 という感じです。 Num Num

簡単JAVA説明⑦ 具体的には  「型名 識別子(変数);」 例 int Num ; char Car ;

簡単JAVA説明⑦ 2.応用 問:なぜ変数を宣言するときに型をしていするのか?   実は、変数を宣言するときその型に応じたメモリ領域が確保されます。(P51図)  ・「変数を宣言する」とは変数分の領域を確保することに他ならない。  次のことも明らか。  ・型に応じて確保されるサイズは異なる。  プログラムを組む上で  ・不要な変数は宣言しない

簡単JAVA説明⑦ ★変数の利用 1.変数に値を代入 変数を宣言した後、特定の値を記憶させます。 Num = 5; ※上記の = は「代入」の意味です。 右辺を左辺に「代入」という意味になります。 ※イメージとしては、 「用意した入れ物にモノを入れる。」 という感じです。図3-5(P52) 5 Num

簡単JAVA説明⑦ ・具体例 class Sample1 { public static void main(String[] args) { // 整数型の変数numの宣言 int num; // 変数numに3を代入 num = 3; // 変数numの値を表示 System.out.println("変数numの値は" + num + "です。"); }

簡単JAVA説明⑦ ・実行結果 変数numの値は3です。

簡単JAVA説明⑦ 注意 なぜ出力結果は 「変数numの値はnumです。」 ではないのでしょう? 実は、出力文内で変数を直接書くと 「変数の値」 が表示されます。

簡単JAVA説明⑦ 2.変数の初期化 int num; num = 3; を一文で int num = 3; と書けます。 このように書くのは文頭であり、 「初期化する。」と言います。

簡単JAVA説明⑦ 3.変数の値の変更 次のことを理解していただければよいです。 「変数は上書き変更が可能」 => Sample2  「変数は上書き変更が可能」  => Sample2 ★変数同士の代入  変数同士でも「= は代入の意味」を適用。  => Sample3

簡単JAVA説明⑦ class Sample2 { public static void main(String[] args) { int num; num = 3; System.out.println("変数numの値は" + num + "です。"); // 【変数numの値を5に変更】 num = 5; System.out.println("変数numの値を変更しました。"); System.out.println("変数numの新しい値は" + num + "です。"); }

簡単JAVA説明⑦ class Sample3 { public static void main(String[] args) { int num1, num2; num1 = 3; System.out.println("変数num1の値は" + num1 + "です。"); // 【変数num2に変数num1の値を代入】 num2 = num1; System.out.println("変数num1の値を変数num2に代入しました。"); System.out.println("変数num2の値は" + num2 + "です。"); }

簡単JAVA説明⑦ ★キーボードからの入力 次のSample4ではキーボードから文字を入力し 表示するサンプルを示します。 System.out.println(“”); 以外は今回は無視して一種のおまじない と思ってください。

簡単JAVA説明⑦ import java.io.*; class Sample4 { public static void main(String[] args) throws IOException { // プロンプトメッセージを表示 System.out.println("文字列を入力してください。"); // キーボード入力ストリームを作成 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // キーボード入力ストリームから1行分の文字列を入力 String str = br.readLine(); // 文字列strの内容を表示 System.out.println(str + "が入力されました。"); }

import java.io.*; class Sample05 { public static void main(String[] args) throws IOException { // プロンプトメッセージを表示 System.out.println("整数を入力してください。"); // キーボード入力ストリームを作成 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // キーボードから文字列を入力し、strに格納 String str = br.readLine(); // 【文字列strを整数numに変換】 int num = Integer.parseInt(str); // 整数numの値を表示 System.out.println(num + "が入力されました。"); }

簡単JAVA説明⑦ まとめ 変数 識別子 型と名前 予約語 変数 = ●;(=は代入) 変数は上書き可能 キーボードからの入力

簡単JAVA説明⑧ ★式と演算子 1.式のしくみ ・式とは?=>数式 x+y、5+3 ・プログラミング(JAVA)における式は ・式とは?=>数式 x+y、5+3 ・プログラミング(JAVA)における式は 「オペランド+演算子」  x+yでいうx、yがオペランド、+が演算子 =>Sample1

簡単JAVA説明⑧ class Sample1 { public static void main(String[] args) { // 1+2の計算結果を表示 System.out.println("1+2は" + (1 + 2) + "です。"); // 3*4の計算結果を表示 System.out.println("3*4は" + (3 * 4) + "です。"); }

簡単JAVA説明⑧ 出力結果 1+2は3です。 3*4は12です。

簡単JAVA説明⑧ 2.式の値の出力 (1+2)、(3*4)はその 「評価値(計算値)」 を返します。   (1+2)、(3*4)はその    「評価値(計算値)」   を返します。  これは変数を用いた場合も成り立ちます。 =>Sample2

簡単JAVA説明⑧ class Sample02 { public static void main(String[] args) {   int num1 = 2; int num2 = 3; int sum = num1 + num2; System.out.println("変数num1の値は" + num1 + "です。"); System.out.println("変数num2の値は" + num2 + "です。"); System.out.println("num1+num2の値は" + sum + "です。"); num1 = num1 + 1; System.out.println("変数num1の値に1をたすと" + num1 + "です。"); }

簡単JAVA説明⑧ 出力結果 変数num1の値は2です。 変数num2の値は3です。 変数num3の値は5です。

簡単JAVA説明⑧ 3.応用  キーボードから適当な数値を入力してそのたし算の結果を表示する。 =>Sample3

import java.io.* class Sample03 { public static void main(String[] args) throws IOException { System.out.println("整数を2つ入力してください。"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str1 = br.readLine(); String str2 = br.readLine(); int num1 = Integer.parseInt(str1); int num2 = Integer.parseInt(str2); // num1 + num2を計算し、計算結果を表示 System.out.println("たし算の結果は" + (num1 + num2) + "です。"); }

簡単JAVA説明⑧ 実行結果 整数を2つ入力してください。 5 6 たし算の結果は11です。