第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.

Slides:



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

独習JAVA Chapter 6 6.6 クラスの修飾子 6.7 変数の修飾子 結城 隆. 6.6 クラスの修飾 abstract インスタンス化できないクラス。1つまたは複数のサブクラスで 実装してはじめてインスタンス化できる。 final 継承されたくないことを明示する。これ以上機能拡張 / 変更でき.
山元進.  for 文  while 文  do ~ while 文  文のネスト  break 文  continue 文.
2.5 プログラムの構成要素 (1)文字セット ① ASCII ( American Standard Code for Interchange ) JIS コードと同じ ② EBCDIC ( Extended Binary Coded Decimal for Information Code ) 1.
演算、整数型と浮動小数点型 第3回目 [4月27日、H.16(‘04)] 本日のメニュー 1)前回の課題・宿題 2)ファイルサーバの利用
プログラミング基礎I(再) 山元進.
プログラミング基礎I(再) 山元進.
プログラミング基礎I(再) 山元進.
アルゴリズムとプログラミング (Algorithms and Programming)
基礎プログラミングおよび演習 第9回
プログラミング基礎I(再) 山元進.
Java I 第2回 (9/22).
プログラミング実習 1・2 クラス 第 1 週目 担当教員:  渡邊 直樹.
1.12 式における型変換 1.13 代入における型変換 1.14 コメント 10月31日(金) 発表者:藤井丈明
第20章 Flyweight ~同じものを共有して無駄をなくす~
情報工学演習Ⅰ Java入門の入門 104 slides.
JAVA入門② 変数と型 式と演算子 制御文.
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
11.6 ランダムアクセスファイル 11.7 StreamTokenizerクラス
プログラミング言語入門 手続き型言語としてのJava
プログラムの制御構造 選択・繰り返し.
JAVA入門.
JAVA入門後期⑩ 情報処理試験例題解説.
アルゴリズムとプログラミング (Algorithms and Programming)
第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション.
情報処理Ⅱ 第2回 2007年10月15日(月).
独習JAVA 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 ObjectクラスとClassクラス 11月28日(金)
暗黙的に型付けされる構造体の Java言語への導入
アルゴリズムとプログラミング (Algorithms and Programming)
プログラミング演習I 2003年5月7日(第4回) 木村巌.
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
第1回 プログラムの基本 他人が読めるプログラムを書く.
04: 式・条件分岐 (if) C プログラミング入門 基幹7 (水5) Linux にログインし、以下の講義ページ を開いておくこと
第7回 条件による繰り返し.
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
もっと詳しくArrayクラスについて調べるには → キーワード検索
2013年度 プログラミングⅡ ~ 計算してみよう ~.
2015年度 プログラミングⅡ ~ 計算してみよう ~.
オブジェクト プログラミング 第2回 プログラムの基本.
C言語ファミリー C# 高級言語(抽象的) Java オブジェクト指向 C++ C 機械語(原始的)
アルゴリズムとプログラミング (Algorithms and Programming)
地域情報学 C言語プログラミング 第2回 変数・配列、型変換、入力 2017年10月20日
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
プログラミング言語論 第十一回 理工学部 情報システム工学科 新田直也.
オブジェクト指向言語論 第三回 知能情報学部 新田直也.
C#プログラミング実習 第3回.
計算機プログラミングI 木曜日 1時限・5時限 担当: 増原英彦 第1回 2002年10月10日(木)
計算機プログラミングI 第3回 プリミティブ値 クラスメソッド クラス変数 式と演算 変数の利用
情報処理Ⅱ 第2回 2005年10月14日(金).
情報処理Ⅱ 第2回 2006年10月13日(金).
アルゴリズムとデータ構造1 2009年6月15日
情報処理Ⅱ 2005年10月28日(金).
JAVA入門⑥ クラスとインスタンス.
オブジェクト指向言語論 第九回 知能情報学部 新田直也.
オブジェクト指向言語論 第二回 知能情報学部 新田直也.
コンパイラ 2012年10月11日
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
岩村雅一 知能情報工学演習I 第8回(C言語第2回) 岩村雅一
アルゴリズムとデータ構造 2010年6月17日
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
情報処理Ⅱ 第2回 2004年10月12日(火).
第3回簡単なデータの入出力.
情報処理Ⅱ 小テスト 2005年2月1日(火).
オブジェクト指向言語論 第九回 知能情報学部 新田直也.
オブジェクト指向言語論 第十回 知能情報学部 新田直也.
C言語講座 四則演算  if ,  switch 制御文.
情報処理Ⅱ 2006年10月27日(金).
計算機プログラミングI 第2回 2002年10月17日(木) 履習登録 複習 ライブラリの利用 (2.6-7) 式・値・代入 (2.6-8)
計算機プログラミングI 第10回 2002年12月19日(木) メソッドの再定義と動的結合 クイズ メソッドの再定義 (オーバーライド)
Presentation transcript:

第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日

本日の講義内容 Java のキーワードについて Java の変数と型の宣言 Java のプログラム内の記号の意味 Java の計算記号と演算

復習:Javaの開発環境の構成 Java仮想マシン(JVM) Java コンパイラ その他のツール(jarなど) 標準クラスライブラリ (java.awt, java.net など)

Java による開発手順 クラスの設計 (ソースファイルの記述) コンパイル (バイトコードの生成) 実行 (仮想マシンへのロード)

クラス名とファイル クラス名でソースファイル名が決まる Welcomeクラス=> Welcome.java コンパイルでバイトコード javac Welcome.java クラス名+.class => Welcome.class 実行時にはクラス名を引数に java Welcome

サンプルソース: Welcome.java public class Welcome { public static void main(String[] a){ System.out.println( "Welcome!" ); }

キーワードとは? Javaで役割が予約されている語 約50語定義(goto,constは予約のみ) 基本データ型とその値 修飾子 制御構造 例外処理 クラスの構造とオブジェクト生成

基本データ型とその値 整数および浮動小数の型 文字データの型 論理値の型と値 void型 byte,short,int,long,float,double char,boolean,true,false,void int x=10; boolean b=true;

修飾子 クラス、メソッド、フィールドなどの性質を表す public protected private static final transient volatile abstract native synchronized public static void main(String[] args){ }

制御構造 条件分岐 if else switch case default ループ処理 for while do break continue メソッドの処理 return

例外処理の制御 例外の捕捉と処理 try catch finally 例外の発生 throw throws

クラスとインスタンスの生成 クラスの定義 class interface enum パッケージ名の宣言、指定 package import クラスの継承 extends implements インスタンスの生成、破棄 new null

最初に理解すべきキーワード class int, float, char *意味は今のところ気にしなくてもよい public, static, void

キーワードではないが・・・ main() -- ここから処理がスタート String -- 文字列(複数の文字のデータ) System – Javaのシステム自身 out – (システムの)標準出力 println() – 1行出力する処理 * System.out.println( “ABC” ); 「システムの標準出力に “ABC” と1行出力」

重要な働きをする記号 区切りの括弧 { } ( ) [ ] 式の区切り ; データの並びの区切り , パッケージ名、クラス名の区切り . 区切りの括弧 { } ( ) [ ] 式の区切り ; データの並びの区切り , パッケージ名、クラス名の区切り . 「ラベル」の指定 : クォーテーション記号 ‘ “ コメント文 /* */ /** */ // アノテーション(J2SE5.0より) @

サンプルソース: Welcome.java /** 最初のクラスのサンプル */ public class Welcome { public static void main(String av[]){ System.out.println( "Welcome!" ); }

Javaのプログラムの構造 クラスという単位でプログラムを管理 クラスの内部にはさらに構造がある 構造は階層的 構造の単位を{ と }で表す

クラスの定義とクラス名 クラスの定義の開始は class クラスは名前をもつ 習慣としてクラス名は大文字で始める クラス名はプログラムの管理にも影響(ソースファイル名、バイトコード名)

基本データ型とその値 整数および浮動小数の型 文字データの型 論理値の型と値 void型 byte,short,int,long,float,double char,boolean,true,false,void int x=10; boolean b=true;

9種類の基本データ型 byte 1バイト(8ビット)の整数値 short 2バイト(16ビット)の整数値 int 4バイト(32ビット)の整数値 long 8バイト(64ビット)の整数値 char 2バイトの文字コード(整数値) float 4バイトの浮動小数値 double 8バイトの浮動小数値 boolean 論理値(値は true か false) void データなしの型(メソッドの型のみに使用)

データの型宣言のルール データは必ず1種類の型を持つ データは使用前に必ず型宣言 宣言と同時に値を代入するのは可 型の宣言はデータごとに1回のみ データの有効範囲は、宣言された構造の内部に限定

リテラルとは? リテラルとはプログラム内の値の表現 Javaのリテラルの種類 整数リテラル 浮動小数リテラル 論理値リテラル 文字リテラル 文字列リテラル 空リテラル

整数リテラル 10進数、8進数、16進数の区別 16進数でのa,b,c,d,e,f の意味 long型の値の指定 代入可能な型 byte,short,char,int,long 型ごとに格納可能な数値が異なる 15, 0xff, 0XFF, 024 15l, 15L 10000000000L

浮動小数リテラル 代入可能な型 float, double float, doubleの識別 指数表現: e の後に10進の指数部 20.0, 2e1, 2E1, 2E+1 0.02, 2e-2, 2E-2 20.0f, 2e1f

論理値リテラル 代入可能な型 boolean 値は true と false 数値としては扱わない

文字リテラル、文字列リテラル 文字リテラルは char 型に代入 文字列リテラルは Stringクラスに代入 文字は‘ ’ 文字列は “ ” 文字は‘ ’ 文字列は “ ” ‘a’, ‘象’ “abcd”, “稚内北星” char c=‘X’; String s=“X”;

演算子とは? データの値の操作を指定する 記号の文字、および文字の組み合わせ 単項演算子 +,-,++,--,~,! 算術演算子 +,-,%,*,/ 代入演算子 =, (演算子)= 比較演算子 >,<,==,<=,>=,!=,instanceof 論理演算子 &&, || ビット演算子 ^,&,| シフト演算子 >>, >>>, << 3項演算子 ? : キャスト演算子 (型)

単項演算子の基本 数値の符号 +, - インクリメント、デクリメント ++, -- 前置と後置の違い 論理値の否定 ! ビット反転 ~ a= -a; x++; ++x; b= !true; z=3; y=++z;

算術演算子の基本 四則演算と剰余(余り)演算 +,-,*,/,% 剰余演算は整数のみ対象(負数にも定義) 演算の優先順位 文字列の連結にも + 結果は必ず文字列 3 - 15%2 (3 - 15)%2 “x=“ + 3 + 2 “x=” + (3+2)

代入演算子 =, (演算子)= 左辺の値を右辺に代入 y = x + 1; 左辺の変数自身との演算結果を代入 y += 2; y = y + 2;