今日からはじめる
Java プログラミング
~Java 超入門~
日本オラクル株式会社
オラクルユニバーシティ
プリンシパルインストラクター
渋井 俊昭
Java Day Tokyo 2017
2017
年
5
月
17
日
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
本日
おはなしすること
Java とは?
はじめての Java プログラム
ステップアップ(データ型と変数、プログラムの構造)
もっと学習するには(参考資料)
1
2
3
4
Java
とは?
なぜ Java を勉強するのですか?
–
みんなやっているから?
–
会社からの指示で?
–
面白そう?
–
プログラミングぐらい出来ないとなー
–
基礎素養として
などなど
プログラミング言語およびプログラムの
実行環境
(プラットフォーム)
で
最先端
の
プ
ログラム
の
基礎
となっている
テクノロジー
です
世界中の個人用コンピュータや、何十億台もの
デバイス
(モバイルデバイスや TV など)
で動作してい
ます
私が、『Duke(デューク)』です。
Duke
, the Java Mascot
さまざまなシステムで動作するアプリケーションを Java で開発可能
さまざまな環境で
Java
が動きます
Servers
Servers
Desktop
Desktop
Embedded
Embedded
TV
TV
Mobile
Mobile
Card
Card
Java Card
Java EE
Java TV
BD-J
JavaFX
MAF
Java Language
Java SE
Java ME
APIs
Platform
Language
Server JVM
Client JVM
Embedded JVM
TV JVM
Mobile JVM
Card JVM
JVMs
世界で
最も利用
されている開発言語のひとつです。(2017/5現在)
PYPL: PopularitY of Programming Language
http://pypl.github.io/PYPL.html
【メリット】
•
プログラミング言語 … 『プログラム
を
作る
』
–
従来のプログラミング言語の
良いところ取りです
•
プラットフォーム … 『プログラム
を
動かす
』
–
実行環境 (Java Runtime Environment)
•
プラットフォームに依存しない
実行環境 (JVM) を提供します
–
開発環境 (Java Development Kit)
•
プログラミングに必要なツール群が
無償で利用できます
プログラミング言語
プラットフォーム
実行環境
開発環境
プログラミング言語
プログラミング言語
と
プラットフォーム
Java
の 2 つの側面
『Java』という言葉は
2つの意味で使われて
いる!!
一度作った『実行ファイル』は様々なプラットフォーム(OS上)で実行可能です。
Javaは
マルチプラットフォーム
『ソース・ファイル』
『ソース・コード』
と呼ぶ
『クラス・ファイル』
『実行ファイル』
と呼ぶ
作るのはココ!
コンパイラが行うのは【変換作業】
『人間が分かりやすい/作りやすい』形
↓
『コンピュータ上で効率よく実行できる』形
Windows
Linux
Solaris
【メリット】
•OS毎に開発部隊(要員)を準備しなくて良い。(新たな開発に人員を回せる)
•後からプラットフォームを変更してもプログラムを最小限の変更で利用できる。
様々な環境で
動く!
コンパイラが
作ってくれる!
Java EE
•
Java EE
(Enterprise Edition)
–
エンタープライズ・システム
(企業システム)
向けのAPI を提
供
•
Java SE
(Standard Edition)
–
標準 API を提供
•
Java ME
(Micro Edition)
–
組み込みデバイス向けの
API を提供
Java のエディション
Java SE
Java SE
Java SE
Java ME
Java が動く環境にあわせて 3 つのエディションを提供
ここから勉強を
始めるのが良い
•
継承
–
下位互換性の維持
–
既存の技術の改善
•
革新
–
OS, HW の進化に対応
–
利用形態の変化に対応
–
開発言語の変化に対応
継承と革新
Java の方向性
マルチコア最適化
大容量メモリ対応
モバイル/HTML5
クラウド
他言語サポート
開発生産性の向上
既存資産, ナレッジの保護
Internet of Things
1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018
Java
SE
のあゆみ
Java SE 5.0
Java SE 6
Java SE 7
Java SE 8
J2SE 1.3
J2SE 1.2
JDK 1.1
JDK 1.0
J2SE 1.4
言語仕様の
大きな変更
言語仕様の
大きな変更
言語仕様の
大きな変更
言語仕様の 小さな変更Java SE 9
言語仕様の
大きな変更
はじめての Java
プログラム
プログラミング
はなにをすること?
•
プログラムとは?
–
コンピューターに実行させる処理を記述したものです
–
プログラムをコンピュータが解釈できる形にしたものを
実行ファイルと言います
•
プログラミング言語とは?
–
プログラムを記述するために作られた人工言語です
•
Java や C++ などはプログラミング言語です
コンピューターに実行させるプログラムを書くことです
プログラム
実行ファイル
1+1= ?
プログラミング言語
2
実行結果
プログラミングに
必要なもの
は?
•
ソースコードを記述するもの
–
テキストエディタなどでソースコードを記述できます
•
ソースコードから実行ファイルを生成するもの
–
コンパイラなどを含む
開発環境
を使用します
ソースコード
コンパイラ
実行ファイル
開発環境
開発環境
を
準備しましよう
作るのはココ!
開発環境
(Java Development Kit)
Javaプログラミングに必要なツール
(コンパイラやドキュメント生成ツール、
実行コマンド) が含まれています
実行環境
(Java Runtime Environment)
Javaプログラムを実行するた
めのコマンドが含まれていま
す
必要なものは
JDK
として提供されます
ソースコード
コンパイラ
(
javac
)
実行ファイル
APIドキュメント
ドキュメント生成
(
javadoc
)
実行
(
java
)
JVM
開発環境
としての Java
ソースコードを実行ファイル化することを
コンパイル
といいます。
JDK(Java Development Kit)
を
入手
するには?
Oracle Technology Network
から無償で入手できます
http://www.oracle.com/technetwork/jp/index.html
ウィザードの指示に従えば大丈夫。
JDKを
インストール
しましょう
Windows インストーラでは
JDK(開発ツール) と JRE を
個別に インストール できます
Helloworld
•
画面に文字列を表示するプログラムを作ってみましょう
–
初めてのサンプルプログラムとして多くのプログラミング言語で作られる文字列を表
示するプログラムです
–
なぜ Helloworld ?
•
伝統的にこの文字列が使われています
(特に意味はないようです )
世界一有名なプログラムを Java で作ってみよう
Hello
Java
!
3つのステップでプログラミングします
Javaプログラミングの流れ
ソースコード
コンパイラ
(
javac
)
実行
(
java
)
JVM
実行ファイル
①ソースコードを
書く
②ソースコードをコ
ンパイルする
③プログラムを
実行する
お好みの
エディタでOK
テキストエディタで書いてみましょう
①ソースコードを
書く
public class Helloworld {
public static void main(String[] args) {
System.out.println("Hello Java!");
}
}
ファイル名は「クラス名.java」で保
存しましょう
クラス名
One Point:
・ソースコードでは半角文字と全角文字は区別されます。
・英数字とスペース (空白) は半角文字
を使いましょう。
・エディタの機能に「全角スペースを表示」機能があればONにし
ておきましょう。
Helloworld.java
Javaは大文字/小文字
を区別します。
public class Helloworld {
public static void main(String[] args) {
System.out.println("Hello Java!");
}
}
Javaプログラムはクラスという単位で構成されます
①ソースコードを書く
Helloworldというクラスの定義
javaコマンドでプログラムを実行するときに呼び出す処理の定義 (mainメソッド)
プログラムとして実行される処理の内容
→ 「
Hello Java !
という文字列を画面に表示しなさい」
One Point:
文字列を表示するときは 文字列
を「"
(ダブルクォーテーション)
」で囲み
ましょう
Helloworld.java
ソースコードの完成
ソースコードが
完成しました。
クラスファイル (実行ファイル) を生成します。(javac コマンド)
②ソースコードを
コンパイル
する
javac
One Point:
生成された実行ファイルはクラ
スファイルと呼びます
Helloworld.java
Helloworld.class
One Point:
Windows 環境などで javac コマンドが見
つからない場合は環境変数 PATH の設定
を確認しましょう
Javac(コンパイラ)に
ソース・コードを
渡します。
Helloworld.java
コンパイルがうまくいかない場合は?
②ソースコードをコンパイルする
One Point:
コンパイルに失敗すると失敗の原
因が表示されます。ソースコードを
確認してみましょう。
タイプミスを修正して
もう一度コンパイルしましょう
【ポイント】
•ミスが見つからないときは前の行も見ましょう。
•エラーの量に圧倒されずに、『一番上から』修正しましょう。
【エラーが伝えていること】
•
3行目が間違ってます。
•位置は ^(ハット)のあたりです。
クラスファイルを実行してみましょう
③プログラムを
実行する
java
Hello Java !
One Point:
javaコマンドを実行するときには
クラス名を指定します
(
拡張子 .class は指定しません
)
Helloworld.class
Java(実行環境)に
クラスファイルを
渡します。
早い段階で、何も見ずにこのコードが書けるようになりましょう。
(Javaで何かを行おうとしたときに、最低でもこのコードは書かないといけません。)
このコードは丸暗記
public class Xyz {
// main メソッド
public static void main(String[] args) {
}
}
One Point:
・ソースコードは綺麗に書くようにする。(動けばいいという考えは良くない)
→コードレビュー時に
他人がコードを読むことを考慮
する。
→プログラムの構造が見た目に分かりやすくなりバグを見つけやすくなる。
→デバッグ時の効率が良くなる。
Xyz.java
インデント(字下げ)
もきちんと行う。
コメントもつけて
境目を分かりやすく。
•Java言語には『コーディングの作法』があります。
•この作法に則ってプログラムすることで、コードが読みやすくレビューしやすくなります。
統合開発環境 (
IDE
) とは?
•
ソースコードを記述するエディタやコンパイラ
などの開発環境をひとつの画面から利用できる
ソフトウェアです
–
IDEから必要なツールを使うことができます
–
コード補完機能などプログラミングをサポート
する便利な機能も提供されます
•
代表的なIDE
–
NetBeans (
http://ja.netbeans.org/
)
–
IntelliJ IDEA (
http://www.jetbrains.com/idea/
)
–
Eclipse (
http://www.eclipse.org/
)
プログラミングを「かんたん」にしてくれるソフトウェアです
メリットはあるのですが・・・
IDEが補完してしまうので、頭に残りません。
IDE の構成画面を覚えましょう
IDE
を使う場合は? -
NetBeans
編
プロジェクト
ウィンドウ
エディタ
ウィンドウ
出力
ウィンドウ
One Point:
NetBeansでは作成するプログラム
を
プロジェクト
という単位で管理し
ています。
プロジェクト・ウィンドウには作成し
たソースコード(.javaファイル)が表
示されます。
エディタ・ウィンドウにはソースコー
ドを編集することができます。
出力ウィンドウにはプログラムの
実行結果などが表示されます。
プロジェクト
作成
プログラムを管理するためのプロジェクト作成しましょう
①
プロジェクト
を作成
する
Javaアプリケーション
を選択
メイン・クラスの作成は
任意で選択
プロジェクト内にクラスを作成しましょう
②
クラス
を作成する
クラス名は大文字小文字が
区別されるので注意しましょう
実際のプログラム開発時は
パッケージを指定しましょう
プログラムで実行したい処理を書きましょう
③ソースコードを
書く
One Point:
作成したプログラムのクラスと
mainメソッドは自動的に定義され
ています。
エディタ・ウィンドウではmainメソッ
ドの中にプログラム実行したい処
理を記述していきます。
NetBeansではコード補完機能があ
るので効率的にプログラミングを
行うことができます。
選択肢を選ぶだけ。
入力ミスの低減、入力
時間の短縮で効率的。
コンパイルエラーになるコードを書いてしまったら?
③ソースコードを書く
One Point:
NetBeansではプログラムに不備が
あってコンパイルエラーになる場
合は、
赤い波線
とアイコンが表示
されます。
予約語などのキー
ワードは色がつくので
分かりやすい。
この辺の行に
エラーがあるよー
(クリックするとジャン
プします。)
赤がある間は
実行できないよ
プログラムを実行してみましょう
④プログラムを
実行する
[プロジェクトを実行] で
も実行可能です
One Point:
プログラムを実行すると結果が出
力ウィンドウに表示されます。
One Point:
NetBeansではファイル保存時にコ
ンパイルが行われているため明示
的にコンパイルをしなくてもプログ
ラムを実行可能です。
(明示的にコンパイルすることもで
きます
)
ファイルの実行を選択すると
プログラムを実行できます
ステップ・アップ
何から学ぶか
•
Javaの世界は広くて深いですが、つまづきやすい以下の点を押さえましょ
う。
• データ型と変数
• クラスとインスタンス
• プログラムの構造
データ型と変数
•
2つのデータ型
–
基本データ型
•
値(データ)を格納するための基本的な型。数字、文字、真偽に対して定義されている。
•
byte, short, int, long, char, float, double, boolean の8種類
•
「原子」のようなもの。
–
参照型
•
基本データ型以外の型(=クラス)
•
クラスとはプログラマが自分で作ることが出来る独自の型
(基本データ型を組み合わせて独自の型を作ることが出来る)
•
原子を組み合わせて作った「分子」のようなもの。
Javaではデータ型は大きく分けて
2つの種類
がある。
変数は入れ物。変数名は入れ物に付けた名前。
2つのデータ型は
取り扱い方法が違うので
常に意識する!!
そもそもなぜデータ型が2つあるのか?
–
基本データ型
•
byte, short, int, long, char, float, double, boolean の8種類
–
参照型
•
基本データ型以外の型(=クラス)
C言語
Java言語
構造化
プログラミング
オブジェクト指向
プログラミング
基本データ型
クラス(参照型)
オブジェクト指向の考え方
データとそのデータを処理する専用のプログラム(メソッド)を一緒にするとメリット大
プログラム
プログラムとデータは別物
・プログラムはデータの特徴(ルール)に注意しないといけない。
(プログラムを書く人はデータ構造の細かい知識が必要)
・誰がいつそのデータを直したのかわかりにくい。
・データ構造を変更するとプログラム処理も変更の影響を受ける。
データ
プログラム
データとそのデータに関連するプログラムを一緒に持つ
・処理する側はデータ側のプログラム(メソッド)に依頼をする。
・データは専用のプログラム(メソッド)が責任を持って修正する。
・データは必ず専用のプログラム(メソッド)が責任を持って修正する。
・データ構造の変更は専用のプログラムが吸収する。
(処理する側(利用者)はデータ構造の変更を意識しなくて良い))
データ
変数Aの値を3に変更
変更します~
専用のプログラム
(担当者)
変更しといてね~
メソッド
従来のプログラミング(構造化プログラミング)
オブジェクト指向プログラミング
Aの値を変更するときには、
まず修正フラグがONになっていないことを確認して、
ONでなければ、修正フラグをONにして
Counter に1足して、
Aの値を修正して、
管理者にメールして
ルール
自分が
書くところ
(参考)オブジェクト指向の考え方
データにそのデータを処理する専用のプログラム(メソッド)を一緒にした物
処理
データ
専用のプログラム
(担当者)
変更しといてね~
メソッド
オブジェクト指向プログラミング
Aの値を変更するときには、
まず修正フラグがONになっていないことを確認して、
ONでなければ、修正フラグをONにして
Counter に1足して、
Aの値を修正して、
管理者にメールして
修正フラグをOFFにするんだったな。
class Employee {
int 社員番号
String 名前
int 年齢
名前を言う();
仕事をする();
}
データ部分
メソッド
(データを操作する
専用プログラム)
クラス
クラス:
自分でオリジナルに作ったデータ構造と、
データを操作する専用のプログラム(メソッド)を
クラスとインスタンス
Javaではプログラマは、クラスを定義することで、自由に型を作成することが出来る
インスタンスの特徴
・具体的な値が入っている。
・メモリ上のどこかに作られる。
・参照されないと消えてしまう。
•クラス:独自の型の定義(設計図、ひな形)
•インスタンス:具体的な値(クラスをnewして作る)
インスタンス:(具体的な値)
Employeeインスタンスをnew演算子を使っ
て2つ作りました。
class Employee {
int 社員番号
String 名前
int 年齢
名前を言う();
仕事をする();
}
クラス: (設計図、ひな形)
Employeeとはこういう概念ですよ
100
山田太郎
30
名前を言う();
仕事をする();
100
田中花子
20
名前を言う();
仕事をする();
new
new
(たい焼きの型のようなもの)
•あんこ入りたい焼き
•あんこ入りたい焼き
•あんこ入りたい焼き
•クリーム入りたい焼き
クラスという仕組みで、
独自の型を作っていいよー
原子は8種類だけど
分子は原子を組み合わせて
無限に作れるようなイメージ
基本データ型と変数
変数を定義する際には①変数名と②データ型が必要。
基本データ型の変数は値を直接内部に格納する。
型:int(整数型)
Javaで書くと・・・
int age;
変数名:age
変数の定義
イメージ
変数の使用
=(代入演算子)を使って
具体的な値を入れる
Javaで書くと・・・
age = 20;
age
イメージ
⑳
age
⑳
結果
ポイント!
基本データ型で定義された変数(箱)には、
「値そのもの」が入っている。
基本データ型の変数には
値がそのまま入っている!
参照型と変数
•
変数を定義する際には①変数名と②クラス名が必要。
•
参照型の変数にはインスタンスをそのまま入れることが出来ない。
•
参照型の変数には「
インスタンスを置いてある場所
」が格納される。
•
「クラスからインスタンスを new して、その場所を変数に入れる」という流れ。
型:Employee(クラス)
Javaで書くと・・・
Employee emp1;
変数名:emp1
イメージ
emp1を使用して、あるEmployeeインスタンスを
間接的に
見たり、書き換えたりすることが出来る。
System.out.println(emp1.名前を言う() );
変数の使用
=(代入演算子)を使って
参照値(場所)を入れる
Javaで書くと・・・
emp1 = new Employee();
emp1
イメージ
100
山田太郎
30
名前を言う();
仕事をする();
参照
インスタンスはXXXに
置いてありますよ。
場所:XXX
(XXX)
値の置いてある場所
(住所)が格納されている。
Employee
インスタンス
変数の定義
クラス
Employee
new
参照データ型の変数には
値の置いてある場所が
入っている!
プログラムの構造
プログラムの構造は3つ
• 順次処理
処理が上から下に順番に流れる
• 分岐処理
条件によって処理の流れを変える
if文
switch文
• 繰り返し(ループ)処理
条件を満たしている間処理を繰り返す
while文 do-while文
for文 拡張for文
プログラムの構造(順次処理)
処理が上から下に流れている形(普通はこうなる)
処理1
処理2
処理3
処理4
開始
終了
プログラムを処理したい順に書いていく。
(自然と順次処理になる)
(あまり順次処理と言うことを意識しなくて良い)
プログラムの構造(分岐処理 if文)
Javaで分岐処理を記述する際に使うのが if 文。バリエーションは4通り。
条件1
処理1
Y
N
条件1
処理1
Y
N
処理2
条件1
処理1
Y
N
条件2
Y
N
処理2
条件1
処理1
Y
N
条件2
Y
N
処理2
処理3
if文
if – else 文
if – else if 文
if – else if - else 文
プログラムの構造(分岐処理 – switch文)
else if の部分はいくつも書くことが出来るが、複雑な処理はわかりにくくなる。
分岐の階層が深くなって分かりにくくなったらswitch文。
Y
N
値
Y
N
Y
N
Y
N
Y
N
Y
N
If文は 2値(Y or N)分岐なので、
複雑になると分岐の階層が深くなってしまう。
switch文は多値分岐(値によって分岐する)ので、
複雑な場合に、処理がすっきり記述できる。
switch文
すっきり
プログラムの構造(繰り返し処理 – while文)
while文
for 文
条件1
処理1
Y
N
条件1
処理1
Y
N
do-while文
while文:前判定の繰り返し
do-while文:後判定の繰り返し
for文:w
拡張for文:を簡潔に記述したもの
覚える順序は以下でよい。
1. while文
2. for文
3. 拡張for文
4. do-while文
(参考)プログラムの構造
プログラムは大きくなるにつれ、全体が把握しにくくなります。
しかし、どんなに大きいプログラムでも以下の3つの繰り返しです
• 順次処理
• 分岐処理
• 繰り返し(ループ)処理
プログラムを書く、読む時には全体の構造を捉えてから
細かく作っていく(読んでいく)ようにしましょう。
ステップ・アップ
$ > java Sum 25
繰り返し
て処理をする
•
入力された整数: N までの合計を表示するプログラム
入力された値をもとに計算する
java
実行結果
1から
25
までの合計: 325
変数をうまく使って計算してみよう
処理を
考えて
みよう
int sum = 0; // 合計
sum = sum + 1;
sum = sum + 2;
…
sum = sum + 25;
int sum = 0; // 合計
int count = 1; // 繰り返し回数
sum = sum + 1; count = count + 1;
sum = sum + 2; count = count + 1;
…
繰り返した回数がわかるようにするには?
1からNまでの合計を求めるには、
sum = sum + ◯;
を N 回繰り返せば良さそう …
繰り返した回数を変数 count に格納
count は繰り返すたびに 1 増える
count が N より大きくなったら終わり
どうすれば計算できるかを
考える。=アルゴリズム
処理の流れをまとめると …
処理を
考えて
みよう
sum (初期値: 0)
sum に合計を格納
count を 1 増やす
count (初期値: 1)
sum を出力する
count が N より大きい
count が N 以下 (繰り返し条件)
One Point:
Java での繰り返し処理は for 文または while 文をつ
かって記述することができます。
for文:
while文:
for(前置式; 条件式; 後置式) {
// 処理
}
while(条件式) {
// 処理
}
繰り返し処理
for 文
の書き方
•
for 文の構文
–
前置式 … 繰り返し処理に必要な前処理式
•
処理は1回だけ行なわれます
–
条件式 … 繰り返し処理するかどうかを判定する条件式
•
条件式の結果は boolean を返す式を書きます
–
後置式 … 繰り返し処理で必要な後処理式
•
繰り返しごとに行なわれます
処理の順番をおぼえよう
for(前置式; 条件式; 後置式) {
// 処理
}
①
②
③
④
処理を 25 回繰り返す場合
for文
で繰り返し処理を
書いてみる
int sum = 0;
for (int count = 1; count <= 25; count = count + 1) {
sum = sum + count;
}
System.out.println( sum );
sum (初期値: 0)
sum に合計を格納
count を 1 増やす
count (初期値: 1)
sum を出力する
count が N=25 より大きい
count が N=25 以下
前置式
後置式
条件式
プログラムを
完成
させよう
public class Sum {
public static void main(String[] args) {
int limit = Integer.parseInt(args[0]);
int sum = 0;
for (int count = 1; count <= limit; count++ ) {
sum += count;
}
System.out.println("1から" + limit + "までの合計: " + sum);
}
}
引数の値(String)をint型に変換します
Sum.java
public class Sum {
public static void main(String[] args) {
int limit = Integer.parseInt(args[0]);
int sum =
IntStream.rangeClosed(1, limit).sum();
System.out.println("1から" + limit + "までの合計: " + sum);
}
}
Java SE 8 では こんな書き方も …
プログラムを
完成
させよう
Sum.java
1 から limit までの整数値のデータの集まり
(コレクション) を生成して
合計する
おつかれさまでした。
1.
Java とは?
–
Java をとりまくあれこれ。
2.
はじめての Java プログラム
–
ソースコードを書く→ コンパイル → 実行
3.
ステップ・アップ
–
データ型と変数の注意点
–
クラスとインスタンス
–
処理構造一覧
•
順次処理
•
分岐処理
•
繰り返し処理
本日おはなししたこと
もっと学習する
には?
Java の技術情報を入手するには?
•
Oralce Technology Network > Java テクノロジー
–
チュートリアルやAPIドキュメントはこちらから
Oralce Technology Network (http://www.oracle.com/technetwork/jp/index.html)
なにはともあれ
ココ!!
Java の技術情報を入手するには?
•
ソフトウェアダウンロード
•
ドキュメント参照
•
Javaコミュニティー
•
各種セミナーご案内
•
メールマガジン
•
研修/認定試験
日本語化されたAPIドキュメントを読んでみよう
Javaプログラミングのおともには?
•初めは、どのようなドキュメントがあるか
探してみましょう!
•気になるところを少しずつ
読み深めていきましょう。
日本語化されたAPIドキュメントを読んでみよう
Javaプログラミングのおともには?
•よりどころはAPIドキュメント。
エンジニアはみんなこれを読んでいる!
•クラス(提供されている部品)の仕様や
使い方などは全てここに記述されている。
•研修/書籍/Webなどで知識を付けつつ
勉強の際にはAPIドキュメントの中に
用意されているメソッドを色々試してみる。
•自分が作ったクラスからAPIドキュメントを
作成して第三者に提供も可能。
(JavaDoc ユーティリティーで作成)
なにはともあれ
ココ!!
Java の技術情報を入手するには?
•
Java関連技術
•
Cloudプラットフォーム
•
JavaEE
•
WebLogic Server
•
最新事例
•
各種イベント
Java SE 8 プログラミング I
はじめ
が
肝心
Java プログラミング
を
しっかり学
ぼう
。
オラクルユニバーシティでは、Java によるオブジェクト指向プログラミングを体系的に学習することができる研
修コースを提供しています。わかりやすい講義と実機演習を通して Java プログラミングの勘所をじっくり・しっ
かり身につけることができます。
コース 概要 このコースでは、Java の概要 および Java 言語の基本文法について習 得します。クラスとオブジェクト、カプセル化、継承、ポリモフィズムなど、 オブジェクト指向プログラミングの基本知識およびテクニックについて 実習を通して学習します。また、例外処理や基本的なライブラリの使 用方法(ラムダ式を含む)についても学習します。 学習 内容 Java プログラミングの概要と基本構文 クラスやメソッドの定義 クラスの継承とインタフェースの使用 オーバーライドとポリモーフィズム 例外処理 Date and Time API の基礎
インタフェースのデフォルトメソッドの使用 ラムダ式の基礎
日数
3
日間
Learn
Oracle
from
Oracle
Java SE 8 プログラミング II
コース 概要 このコースでは、コレクション・フレームワーク、ファイル入出力、並列処 理およびJDBCによるデータベースアクセスなどJavaコアAPIを使ったプロ グラミングついて学習します。コレクション・フレームワークやスレッド処 理、ファイルI/OやNIO.2、およびFork/Joinフレームワークを使用した並 列プログラミングやローカライゼーションについて実習を通して学習す ることができます。 学習 内容 コレクション・フレームワークの理解 ラムダ式の使用 スレッドを使った並列処理とFork/Joinフレームワーク ストリームを使用したファイル・アクセス NOI.2を使用したファイル・アクセス JDBC APIを使用したデータベース・アクセス ローカライゼーション 日数3
日間
Java SE 7 New Features
Java SE 8
までを
一気
に
キャッチアップ。
オラクルユニバーシティでは、Java SE 7 / 8 の新機能を効率的に学習することができる研修コースを提供して
います。Java SE 7 / 8 で加わった新機能をわかりやすい講義と実機演習を通してをじっくり・しっかり身につけ
ることができます。
コース 概要 このコースではJava SE 7の主な変更点と新機能の詳細を説明します。 このコースはJava SE 6あるいはそれ以前のバージョンのJava SEを使用 した開発経験があるJava技術者が対象になります。コースの受講者は、 Java SE 7の変更点と新機能を深く理解し、Java SE 7を使用したアプリ ケーション開発を行えるようになります。 学習 内容 言語仕様に対する小さな変更(JSR 334) 動的言語呼び出しのサポート(JSR 292) 並行処理とコレクションにおける拡張(JSR 166Y) ネットワークとファイルシステムアクセスに関する拡張 (JSR 203) JDK 7におけるその他の拡張 日数2
日間
Learn
Oracle
from
Oracle
Java SE 8 新機能
コース 概要
このコースでは、Java SE 8の主要な変更点および機能拡張について詳 しく学習します。新機能の概要を理解するとともに、ラムダ式、コレク ションを操作するためののStream API、日時操作のための新しい Data and Time APIの使用方法を学習することができます。
学習 内容 Java SE 8での変更点の概要 関数型インタフェースとラムダ式 java.util.funcation パッケージ Stream API によるコレクション操作 並列 Stream
Date and Time APIの使用
Nashornを使用したJavaでのJavaScript処理 Mission Control および Flight Recorder の概要
Javaプログラミングスキルを客観的に証明する世界共通の認定資格です。
Oracle 認定 Java 資格
設計者の意図を正しく理解して独力で
機能実装が行えるレベル
(中上級Javaプログラマ向け)
Gold資格は、コレクションAPI, ファイルI/O, 並行処理、JDBCなどのコア・ライブラリを使用 方法と Java SE 8 の新機能であるLambda 式や Stream APIを使用した関数スタイルのプ ログラミング方法を理解していることを証明します。加えてデザインパターンについても問われるため設計から実装までの包括的なスキル を身につけていることを証明します。
(Global資格: Oracle Certified Professional, Java SE 8 Programmer)
上級者の指導のもとで実装コードや
テストコードを書けるレベル
(初級Javaプログラマ向け)
Silver資格は、Java言語の基本文法とオブジェクト指向プログラミング(クラス、インタ フェース、例外処理)を理解しているかどうかが主な出題項目です。また、基本的な Lambda 式の書き方やDate and Time API の基礎を含めたプログラミングのために必要 とされる仕様を詳細に理解していることを証明します。
(Global資格: Oracle Certified Associate, Java SE 8 Programmer)