~ほとんどのプログラミング言語に共通する基本の基本~
研修成果
- プログラミング初学者を対象にそもそもプログラムとは何かというところから基本制御構造を使って簡単なプログラムを組めるまでを座学と演習の繰り返しにより学びます。また、オブジェクト指向の入り口、大まかな考え方のところまでを学習します。ポリモーフィズム、カプセル化、継承等のオブジェクト指向の詳細は次の「Javaプログラミング②」でカバーします。
達成目標
- 50~100ステップ程度のプログラムを自力で作成できる
- 基本制御構造を適切に使える
- Oracle Certified Java Programmer, Bronze資格の前半部分をカバーする
対象
IT企業の新入社員または第二新卒。自宅でもPCがあり、プログラミングの自習環境が構築できること。
前提知識
以下の研修に参加していること。または、同等の知識があること。
カリキュラム例
オリエンテーション
・プログラミングの学び方
・開発環境の整え方
Java言語の特徴
(1) Javaプログラムの実行
(2) Javaプログラムの構成
(3) クラスのメンバ(フィールドとメソッド)
(4) エラーへの対処
(5) コメント
変数とデータ型
(1) 変数とはなにか、なぜ使うのか?
(2) Javaで使用できる型
(3) 定数を使うとき
演算子
(1) 関係演算子
(2) 変数を含む式
(3) キャスト演算
条件分岐と判定条件
(1) if文
(2) switch文
(3) 論理演算子
繰り返し処理
(1) While文
(2) for文
(3) do while文
配列
(1) 配列の使い方
(2) 参照とハッシュ値
(3) 2次元配列
文字と文字列の扱い
(1) 文字と文字列の違い
(2) Stringクラス
(3) Stringクラスのメソッド
まとめ
◎理解度チェックテスト
◎Javaプログラミング① 卒業課題
注1)受講者の習熟度に合わせて内容や時間配分を一部変更する場合があります。
注2)上記カリキュラム中に表記がなくともディスカッションや演習、小テストを随時行い、可能な限り個々人にあわせた柔軟な進め方をします。
価格(ノンカスタマイズの場合)
講師料:1日あたり15万円(税別)
テキスト代:3,000円(税別) ✕ 研修参加人数
新入社員の皆さんのFAQ
※NetBeans IDE 8.2で検証しております。
-
パッケージ名やファイル名を間違えました。
-
間違えたパッケージ名、または、ファイル名をクリックして「Ctrlキーを押しながらRキーを押す」と名前変更のダイアログ・ボックスが開くので新しい名前を入力します。
-
プロジェクト名を間違えました。
-
間違えたプロジェクトの上で右クリックして「リファクタリング」-「名前の変更」でと名前変更のダイアログ・ボックスが開くので新しい名前を入力します。
-
ファイルを開きすぎてどのファイルを編集しているのかわかりづらくなってしまいました。
-
ソースコードの上のタブで右クリックして「閉じる」「すべて閉じる」「その他を閉じる」のいずれかを選んで不要なファイルを閉じてください。
-
だんだんと処理が重くなってきました。
-
複数のプログラムを実行している可能性があります。
画面右下に「プロジェクト名(run)」となっていませんか?
そこをクリックすることで実行中のプログラムが分かりますので、不必要なものは×印をクリックして終了させてください。
ちなみに、プログラムが無限ループに陥った場合もこの方法で終了させられます。
-
「"\u3000"は不正な文字です」と表示されました。
-
ソースコードの中に全角スペースが入っています。削除してみてください。
あるいは、フォーマットをかけることで削除することもできます。
-
「○○(クラス名)が重複しています」と表示されました。
-
NetBeansのキャッシュが影響している可能性があります。
「C:\Users\【ユーザー名】\AppData\Local\NetBeans\Cache\dev\index」内のフォルダで更新日時が、この表示がされるようになった近辺のフォルダを削除してからNetBeansを再起動してみてください。
-
パコンソールから入力した日本語が出力ウィンドウで文字化けします。
-
文字コードの問題です。
プロジェクトを右クリックして「プロパティ」をクリック。「プロジェクトプロパティ」-「カテゴリ」-「ソース」の一番下「エンコーディング」を「UTF-8」から「Shift_JIS」へ変更してみてください。
-
作成したJavaプログラムをパソコンでダブルクリックして実行するには?
-
jarファイルを作成します。
プロジェクトを選んでおいて、メニューから「実行(R)」-「プロジェクト〇〇を消去してビルド(C)」を選びます。
出力ウィンドウにjarファイルの出力先が表示されるので移動して拡張子が.jarになっているプロジェクト名と同じファイルを見つけてください。
そのファイルはダブルクリックで実行できます。
ただし、コマンドプロンプトを使ったプログラムの場合、実行が終わるとウインドウが閉じてしまうので一工夫必要です。
講師にご相談下さい。
-
いろいろいじっていたら画面構成が見慣れないものになっていました。
-
ウインドウをリセットします。
メニューの「ウインドウ(W)」-「ウインドウをリセット(W)」を選択します。
10.エディタ部分の文字の大きさや背景の色を変えたいのですが。
「フォントと色(F)で設定できます」。メニューの「ツール(T)」-「オプション(O)」を選択します。
文字の大きさを変えるだけでしたら、Altキーを押しながらマウスホイールを動かしてもいいです。
オプションダイアログボックスでフォントや前景(文字色)、背景(バックの色)を選べます。
-
「構文解析中にファイルの終わりに移りました」というメッセージが出ました。
-
クラス定義の波カッコが閉じられていません。
フォーマットをかけて波カッコの対応を調べてください。
-
「シンボルを見つけられません」というメッセージが出ました。
-
定義していないメソッド、変数などを使用している可能性が高いです。スペルミスを疑ってください。
-
NetBeansコードエディタの右横の赤いマークは何ですか?
-
エラーの個所を示しています。
その赤いマークをクリックするとエラーの個所に移動しますので、素早く修正することができます。
-
成果物の提出はどうやったらいいですか?
-
エクスポート機能を使います。
プロジェクトを選択状態にしたまま、ファイル>プロジェクトをエクスポート>わかりやすい場所(デスクトップなど)にいったん保存して提出してください。
なお、zip形式のままで結構です。
-
プロジェクト名が赤くなりました。どういうことでしょうか?
-
恐らく、必要なライブラリがないからだと思われます。よくあるパターンとしては、プロジェクトをエクスポートしてから別の環境へインポートした場合です。ライブラリを入れ直せば治るはずです。
赤くなっているプロジェクト名を右クリック>参照の問題を解決>解決 でjarファイルを指定してください。ダウンロードが必要ならダウンロードしてください。ファイルの場所が変わるとまた、このエラーが起きますのでファイルの置き場所は決めておいてください。私は、NetBeans のフォルダのetcフォルダに入れています。
-
「消去してビルド」というメニュー項目は単なる「ビルド」とどう違いますか?
-
「消去してビルド」は、以前にコンパイルされたクラス等を削除し、再ビルドします。全くバグがないのに正常に動かないときにも「消去してビルド」をすることで動くことがありますので試してみてください。
-
書いたはずのコードがありません。
-
恐らく、コードが折りたたまれています。「+」のしるしが見えないでしょうか?
ここをクリックするとコードが展開できます。
「+」のしるしが「ー」に変わります。
再度クリックすることで展開と折り畳みが交互にできます。
右クリック>コード折りたたみ を使っても同じことが可能です。
-
コンソールの文字が小さく読みにくいです。
-
コンソールを右クリックしてコンテキストメニューから文字を大きくすることができます。
-
ファイルやパッケージが増えてプロジェクト欄がごちゃごちゃしてきました。
-
プロジェクト欄を右クリックして「すべて縮小」を選べばスッキリします。
-
安全な削除(使用状況の検索を伴う)とはなんですか?
-
クラス間の依存関係を考慮した削除です。他のクラスが削除するクラスに依存していた場合にエラーや警告を出してくれます。
-
「1つまたは複数のプロジェクトのコンパイル時にエラーが発生しました。」というダイアログボックスが出ます。
-
同じプロジェクトにエラーがあるクラスファイルがあるためです。
そのエラーのあるクラスファイル、パッケージ、プロジェクトには赤いマークが表示されているはずです。
以下のように「常に確認せずに実行」にチェックマークを付けて「実行」を選択すれば次回から表示されなくなります。
ただし、プロジェクトにエラーの赤いマークがついている状態を放置するのは悪い習慣です。
エラーを解決するか、エラーの部分をコメントアウトしてプロジェクトには常に赤いマークがつかないようにしましょう。
-
Scannerクラスを使って入力した文字列を出力ウインドウに出力すると文字化けします。
-
おそらくOSはWindowsをお使いではないかと思います。
文字コードにJavaはUTF-8ですが、WindowsはMS932を使っています。
入力する文字コードがMS932であることを示せば大丈夫です。
次のプログラムを試してみてください。
import java.util.Scanner; public class IllegalCharacter { public static void main(String[] args) { System.out.println("文字列を入力してください"); Scanner scanner = new Scanner(System.in, "MS932"); String str = scanner.next(); System.out.println(str); } }
-
コンソール出力した文字に色を付けることはできますか?
-
可能です。
例えば以下の通りにするとコンソールに赤いハートが出力されます。
System.out.println("\u001b[00;31m" +"♥");
詳しくは以下のサイト様を参照ください。
ANSIエスケープコード
-
ブレークポイントの消し忘れを調べるにはどうしたらいいですか?
-
メニューから「ウインドウ>デバッグ>ブレークポイント」を選択するとブレークポイントの一覧が表示されます。
ダブルクリックでブレークポイントの設定個所に飛ぶことも可能ですので消してください。
-
例外処理(try~catch文、throw)は一体どのタイミングで使うものですか?
-
プログラマが予見できないエラーがあります。
例えば、ファイルにアクセスしようとしたら削除されていた。
インターネットにアクセスしようとしたらネットワークが切断されていたなど枚挙にいとまがありません。
そんな時に無様にプログラムを途中で中断させないために例外処理はあるのです。
-
「staticでないメソッド 〇〇をstaticコンテキストから参照することはできません」というエラーが出ます。
-
おそらくメインメソッドから同一クラスにあるインスタンスメソッドを呼び出したのではないでしょうか?
インスタンスメソッドはインスタンスを作ってからインスタンス名.メソッド名で呼び出します。
一方でスタティックメソッドはインスタンスを作らずにクラス名メソッド名で呼び出します。
スタティックメソッドは便利な機能を実現するユーティリティクラスによく見られます。
例えば、Mathクラスとか。
Mathクラスのrandom()メソッドはインスタンスを作らずに実行できます。
逆に、Math⁼数学のインスタンス(実態)とは何かを具体的にイメージすることは難しいです。
こういったものにスタティックメソッドは使われるのです。「staticでないメソッド 〇〇をstaticコンテキストから参照する」ことはできないとは、
Javaコンパイラの立場で言えば、あなたが呼び出そうとしているメソッドはどのインスタンスのものですか?
私にはわかりません。
と言っているようなものです。
-
Javaが完全にできるようになるにはどうしたらいいでしょうか?
-
恐らく完全に理解する日は永遠に来ません。でもそれでいいのです。
Javaを完全に理解する日が来るでしょうか?
Javaを完全に理解するとはどういうことでしょうか?
例えば、Javaのクラスは全部でいくつあるのでしょうか?
数えていないので分かりませんが、APIでパッケージ数を調べたところ3,328個ありました。(Java8)
それぞれのパッケージの中にクラスがあることを考えると膨大ですね。
さらに自社開発のクラスやサードパーティーが作成しているライブラリ(便利なプログラム集)、データベースやネットワークなどの周辺知識も必要です。
そう考えると、いつまでたってもJavaのほんの一部のままでしょうね。
でも、目的のプログラムが作れればいいのですから焦らずに頑張りましょう。