Java Basic データ型 Boolean 〜Step1_2_2
前回は、データ型には何があるの?
ってのを確かめました。
※全部ではありません…
今回は、Boolean = 真偽値に関してやります。
※そのほかのサンプルも作りました。
プログラムでは〜の時はAの処理、
XXXの時はBの処理という様に条件分岐
を行いたい時があります。
そんな時に使用するのがBooleanです。
Booleanの値には、true, falseのみ
以下の様に使用します。
boolean flag = (1 == 1);
上のflagにはtrueが入ります
boolean flag = (1 == 0);
こうするとfalseが入ります
入力した値が”tiger”と等しいか判定する
プログラムを例に記述します。
入力する値→”あ”のケース
if (“tiger”.equals(入力値) {
System.out.println(“タイガー!アカパ”);
} else {
System.out.println(“トラじゃねーな…”);
}
上記の様な
条件分岐があるとして…
“tiger”以外の入力があった場合には
「トラじゃねーな…」とコンソールに出力されます。
条件分岐があるとできることが広がると思います。でわでわ…
<問題>
1.サンプルにあるプログラムに入力を受け付ける処理を加えてそれぞれの文言をコンソールに表示できるプログラムを作って下さい。
2.同様に作成したプログラムに追加して”norway”と入力があった時には「次行ってみよー"をコンソールに出力するプログラムを作って下さい。
なお、同じプログラムで他の文言も出力できる様に作成して下さい。
Java Basic ちょいと寄り道
プログラムの学習をするのも受験勉強も
ちょいと似ていて「休む」って大事です
大人になって、仕事する様になって…
仕事するのにオンとオフの切り替えが
出来ないと作業効率が悪かったり
体を壊したりします。※壊しました(笑)
さて、今回は「寄り道」と称して徒然と思った事を書きます。
2020年からプログラムを義務教育でも
行う事になるそうですが教育、人材育成
という観点で素晴らしいと思います。
理由は、人間は理不尽な生き物だからです。
理論的な思考を身につておくとわりかし楽です。
理由、理屈なしに動くと痛い目にあう事が多いので…
※ラッキーなこともあります⭐️
でも忘れてはいけないのは「何事もやって見なければ何もわからない」という事です、「理論的に考えて…」と言って行動を起こさないのはよくないと思います。
トライアンドエラーで人生を切り開くことも大切なことです。
プログラムの実装でも、何か行動を起こすのでも、想定外がつきものです。
この想定外に立ち向かえる、シンの強い人間が育って欲しいと願うばかりです。
生きていて、
「1人では無理だ」「実現不能かも?」
と思った時こそ理論的に考えてみて下さい。
そして、「仲間を大切にする」ということを忘れないでください。
1人でできることはたかが知れています。
※仲間がいなかったら仲間を作れば良いと思います。
→努力いたします(笑)
論理的思考は「何を」「どのように(どんな手順で)」「どの様な形で実現するか?」と考えて最善の方法を選択、実行する事です。この考え方は安全に人生を歩むのにとても有用だと思うこの頃でございます。
お後がよろしいようで(笑)
Java Basic データ型 〜Step1_2_1〜
前回は、 Javaで何をやるのか?
を考えました。
そして、はじめのプログラムを作成
コンソールにハローワールドを表示
上記の事をやりました。
今回は続きになります。
コンソールに文字を表示したので今度は
四則計算をやろうと思います。
予備知識としてデータ型を理解しておく
必要があります。
実際にコードを書くときは文字を入力
します。パソコン側からして見たら
数値と文字列の区別ができません。
※1〜9の文字、あ〜ん、a〜Zなど
パソコンの認識としては全部が2進数
になっています。
なので「型」を用意して区別します。
データ型は下のページにまとめました。
Java データ型 変数の扱い方〜Step1-2-1〜 – PGボックス
ソースもダウンロード出来ます。
本題に入ります。
四則計算なので数値のデータ型を使用します
上記のページには色々書きましたが
int, doubleの2つを使用します。
以下の書き方は「初期化」と呼びます
→宣言と同時に値をセット
int hensu = 1;
int goulei = 2 + 3;
ここでの1〜3の数字がint型の値です
小数点がつくとdouble型になります
double shosu = 1.23;
そして宣言というのは以下の書き方
int hensu;
値を代入しない場合です。
この時に宣言した変数にはデフォルト値
が入ります。
数値型のデフォルト値(初期値)は0です
int hensu; // 0
double hensu; // 0.0
こんな感じです。
でわ問題です。
問1.
変数「teihen」と「takasa」を初期化
して変数「gmukei」に代入し
コンソールに出力した下さい
三角形の面積を求めるプログラムになります。
問2.
問1を応用して立方体の面積を表示するプログラムを作って下さい。
問3.
同様に円の面積を求めて表示するプログラムを作成して下さい。
なお、円周率にはMath.PIを使用する事
【追申】
「やってみようかな?」と思ったら下のリンクにセットアップ手順を
記載したのでやってみてください。
<< 開発環境関連リンク >>
・Java 開発ツールのインストール – PGボックス
・Eclipse Gitリポジトリの取得 〜GitからソースをPullしよう〜 – PGボックス
Java Basic 〜Javaで何をやるのか?〜
イントロダクション
「プログラムやってみようかな?」と思っている人にはチャンスがあります。
プログラミングの世界への扉を開けるチャンスです。ぶっちゃけた話なんでもいいで。「XXXやってみようかな?」と思った時がチャンスです。
この様に思った時でないと中々新しい事を始めるという事はありません。やって良ければ続くし、そうでなければ続かない…それで良いと思います。
そして、Javaをやってみようかな?と思った方もそうでない方も、ちょいとこの記事を読んでって欲しい。ポイントは…
なぜ?を明確にする技術
「 Javaを学習してどーするの?」を主軸にして考えていきます。
まずは、疑問に対する理解が必要です。
頭の「Java」に対する理解を行います。
Javaで現在、作られているものは以下のようなものがあります。
・WebService → 企業が使用するウェブサイト、銀行のATMなども含む
Webサーバ(インターネットでアクセスしたときにいろんな機能を提供する
・Androidアプリ →実際は、Java + C++ と複数の言語が使用されていることが多い
・Iotアプリ → 2018/0507現在ではJava制のものよりC++の方がメジャー
※「Iotアプリ」はモノとインターネットをうまく繋げて作成された、アプリケーションの事を示しています。(ここでの言い回しです)。この分野では特に一次産業(農業、林業、酪農など)で活躍が期待されています。というか期待しています。
この様な、物事に使用されるプログラム言語がJavaです。開拓すれば、その他の用途にも使えます。詳細に関してはより深いところを理解する必要があるので今は割愛します。
次は「学んでどーする?」について理解します。この疑問は詰まる所「何ができるの?」という事になります。
そして、「出来る様になったあと…」について頭の中で良いのでシュミレートしてみます。これ以上の事はテスト(試験、実験)してみないとわかりませんので、優先順位を下げます。
「XXXができる様になったら…」これはビジネス書などでも時々記載されているのですが「XXXが実現したと思ってその時の周りや生活などの想像をする」という行為が必要になります。これが楽しかったりしますので是非是非やってみて下さい。
そして、プログラムをはじめて学ぶのにJavaを勧める理由は
どっちにしろ知らないものを学ぶのだから、幅の広い範囲で使えるものが良い
と思いますので、Javaを勧めます。
実践
「Javaを学んでゲームを作る」というケースで、記載していきます。
そして今の段階での、目的をゲーム作成(iPhoneアプリ)にします。
上にiPhoneアプリは載せなかったのはiPhoneアプリはSWIFTという言語で
作成されています。
Mac で使用できる「XCode」というIDEを使用して作成します。
色々と調べたところC++ → Qt, Java → AndroidStudio, SWIFT。。。。色々な言語で
ゲームが作成可能です。
なかでも有名なのはUnityです。そしてちょっと敷居が高い
Unreal Engine4(UE4)があります。
そして、最近発見したのがGluon でのクロスプラットホーム開発です。これはJavaを使って、スマホ(iPhone,Android)通常のpcで動くアプリを作れます。
UE4はGPUのスペックがある程度高くないと起動することができません。
その意味で「敷居が高い」のです。詳細は以下のサイトを参照ください。
自分なりに比較してみました。ので興味があればこちらもどうぞ
早い話が「ゲームを作ろう」ということです。
何はともあれ、プログラム(Java)がわからないと何も始まりません。
そして、初めてのプログラムの学習にはこれです。
「ハローワールド」→コンソールに文字を表示するだけ
ここでのポイントは以下の通り
1. Javaはクラスが起動する
2. メインメソッドが動く
理解の仕方は人によるのでなんとも言えませんが
実際に作って、動かして、内容を理解する
という手順で自分は理解してきました。
ここで大切なのはコードを覚える事でなく理解することです。
頭ごなしに覚える事もありますが(笑)
クラスの書き方〜メインメソッドの書き方は下のページを参考にして下さい。
ソースと細かいとこを記載してます。
Java Hello World はじめのプログラム 〜 Step1-1〜 – PGボックス
コンソールに文字が出力されるだけですが、自分で作ると感動するものがあります。
是非やってみて下さい。
【追伸】
GITから自分が作成したサンプルプログラムをダウンロードできます。
Eclipseにそのままインポートするやり方を下のページに記載しました。
Eclipse Gitリポジトリの取得 〜GitからソースをPullしよう〜 – PGボックス
そして、Eclipseなどの開発ツールからAndroidやiPhoneアプリの作成がJavaで出来る方法がありました。
関連ページ一覧
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
Java Basic
- Java Basic Level 1 〜Hello Java〜
- Java Basic Level2 〜Arithmetic Calculate〜
- Java Basic Level3 〜About String class〜
- Java Basic Level 4〜Boolean〜
- Java Basic Level 5〜If Statement〜
- Java Basic Summary from Level1 to 5
- Java Basic Level 6 〜Traning of If statement〜
- Java Basic Level8 〜How to use for statement〜
- Java Basic Level 8.5 〜Array〜
- Java Basic Level 9〜Training of for statement〜
- Java Basic Level 10 〜While statement 〜
- Java Basic Swing〜オブジェクト指向〜
- Java Basic Swing Level 2〜オブジェクト指向2〜
- サンプル実装〜コンソールゲーム〜
- Java Basic インターフェース・抽象クラスの作り方
- Java Basic クラスとは〜Step2_1〜
- Java Basic JUnit 〜テストスイートの作り方〜
JavaFX→LWJGL 〜ゲーム作成準備〜
Javaでのゲーム作成をするのに使用するフレームワークがLWJGLなので表題を変更します。
前回は、ゲーム作成をするのに仕様を考えました。
大雑把にどんなものを作るか?が決まったので早速作成!と行きたいのですが
LWJGLの使い方がわからないので
こいつの使い方を学びます。
先ずはチュートリアルを参考に実装を行います。
プログラム初心者の方にもわかる様に
基本からわかる様に頑張ります(笑)
まずは、環境構築を行います。
Javaを初めてやる人もゲームを作ろうという人もまずは環境構築
を行います。(Javaの基礎も一緒にやります。)
LWJGL 開発環境セットアップ〜Maven使用〜 – PGボックス
※Eclipseを使用すると設定が面倒なのでIntelliJ IDEAを使用します。
やろうとしていることは以下の通りです。
1. とりあえずゲーム作成の手順を学びます。
2. ゲーム作成を行うためにJavaの基礎が必要になる。
3. ここでJavaの基礎をやります。
使用するIDE(開発ツール)はEclipseを想定しております。
当然、NetBeansなど他のツールでも構いません。
セットアップではEclipseの場合のみを記載しますのでご了承ください。
<要点>
・ゲーム作成はLWJGLの学習を進めながらやっていきます。
・Javaの基礎は別個にやります
<手順>
1. ゲーム作成用のプロジェクトを作成してゲーム学習を開始
→ パッケージを切るときに「prac.lwjgl」のように作る
2. ゲームの作成時にJavaでわからないところが出てきたら基礎学習用に
→パッケージを「prac.basic」のように作る
※同じプロジェクト内に作成しておくとゲームで作った処理を使えます。
上のようにパッケージをゲーム用とJava基礎用に分けて作成します。
作って、理解して、動かして…
使えるものがあれば使うってな感じで
とりあえず「Javaを理解科したい」という人は下のリンクを参考にどうぞ
開発環境の構築: Java 開発ツールのインストール – PGボックス
初めのプログラム:Java Hello World はじめのプログラム 〜 Step1-1〜 – PGボックス
次回からLWJGLの学習を始めます。(基礎部分も学習します)
関連ページ一覧
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
LWJGL
- Chapter1[外枠の表示のみ]
- Chapter2-1〜クラスの構成〜
- Chapter2-2〜インターフェースの使い方と詳細〜
- Chapter2-3〜GameEngineクラス(サンプルクラス)〜/li>
- Chapter2-4〜Windowクラス(サンプルクラス)〜
- Chapter3〜描画処理を読む〜
- Chapter4〜シェーダについて〜
- Chapter5-1〜レンダリングについて〜
- Chapter5-2〜レンダリング詳細〜
- Chapter6〜Projection(投影)〜
- Chapter7-1〜Cubeを作る〜
- Chapter7-2〜Texture〜
- Java 3DGame LWJGL Retry Lv1 〜動かして理解する〜
- Java 3DGame LWJGL Retry Lv2 〜動かして理解する2〜
- Java 3DGame LWJGL Retry Lv3 Texture〜動かして理解する3〜「負け越し」
- Java 3DGame LWJGL Retry Lv4 デバック〜動かして理解する4〜「黒星」
- Java 3DGame LWJGL Retry Lv5 遊んでみる〜動かして理解する5〜「引分け」
- Java 3DGame LWJGL Retry Lv6 遊んでみる2〜動かして理解する6〜「白星」
- ava 3DGame LWJGL Retry Lv7 遊んでみる3〜全部テクスチャにする〜
JavaFx ゲームを作る 〜まずは仕様を考える〜
Javaとかそれ以前に、「どんなものを作るの?」を決めないと
何も始まりません。
というわけで、まずはテンプレート的なゲームを作成しようと思います。
<<追伸>>
Javaで作成したアプリはiPhoneアプリとして使用するつもりです。
Java→iPhoneアプリはRoboVMで作成可能です(2018/5/6)
https://www.google.co.jp/amp/s/amp.reddit.com/r/programming/comments/7ji3h4/compile_ios_projects_on_windows_and_linux_robovm/
タイトルは「スーパー勇者プラザーズ」にしようと思っております(笑)
ポイントとしては以下の通りです。
・ゲームの基本的(ベースになる操作を網羅する様)なものとして
・アクションゲームがあげられると思います。
・イメージとしてはあのスーパー兄弟だと思いますので。。。
そして、ほとんどの人が作成したいとおもうのがRPGです。
(→自分の周りの人間50人に聞きました) ※もう少し少ないかもです(笑)
というわけで上記の様なタイトルになりました。
これで仕様を考えるのですが、以下の項目を決定することにします。
仕様
・キャラクター(主人公?)の表示を行う
・そして、キャラクターの操作を行える様にする
->アイドリング(待機状態での動き)
->歩行 ※走るのは考え中
->アイテムを拾う
->アイテムを使用する(飲む、食べる、投げる、掲げる、地面に置く)
->攻撃(アタック)
->防御(シールド)
->ジャンプ
->魔法を使用する
・スタートする
・ゴールする
<ここからは検討中>
・装備の選択
・アイテム管理(道具袋)
実装に関しては以下を使います
使用プログラム言語(ライブラリ) -> Java, LWJGL
この仕様を満たす様に作成していこうと思います。
が「仕様変更」はつきもの。。。なるべく仕様変更があってもソースの修正を
行わなくても良い様に作成して行きたいと思います。
LWJGLダウンロード
LWJGL - Lightweight Java Game Library
環境構築
Setting Up LWJGL with Eclipse - LWJGL
という人は下のページを参考にしてみて下さい
Java Game作成 – PGボックス(LWJGLのインストール手順)
Java Hello World はじめのプログラム 〜 Step1-1〜 – PGボックス
開発環境の作成はこちら
関連ページ一覧
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
LWJGL
- Chapter1[外枠の表示のみ]
- Chapter2-1〜クラスの構成〜
- Chapter2-2〜インターフェースの使い方と詳細〜
- Chapter2-3〜GameEngineクラス(サンプルクラス)〜/li>
- Chapter2-4〜Windowクラス(サンプルクラス)〜
- Chapter3〜描画処理を読む〜
- Chapter4〜シェーダについて〜
- Chapter5-1〜レンダリングについて〜
- Chapter5-2〜レンダリング詳細〜
- Chapter6〜Projection(投影)〜
- Chapter7-1〜Cubeを作る〜
- Chapter7-2〜Texture〜
- Java 3DGame LWJGL Retry Lv1 〜動かして理解する〜
- Java 3DGame LWJGL Retry Lv2 〜動かして理解する2〜
- Java 3DGame LWJGL Retry Lv3 Texture〜動かして理解する3〜「負け越し」
- Java 3DGame LWJGL Retry Lv4 デバック〜動かして理解する4〜「黒星」
- Java 3DGame LWJGL Retry Lv5 遊んでみる〜動かして理解する5〜「引分け」
- Java 3DGame LWJGL Retry Lv6 遊んでみる2〜動かして理解する6〜「白星」
- ava 3DGame LWJGL Retry Lv7 遊んでみる3〜全部テクスチャにする〜
JavaFx 開発チュートリアル 〜3: 入力イベントを操る(実装編)〜
前回、初めに実装したJavaFxのソースを眺めました。
そして、今回はイベント処理の実装を行います。
また前回と同じソースです。ダウンロードはここ
javaソース↓
public class Lesson1 extends Application {
/**
* はじめのプログラムは「Hello World」<br/>
* どの言語でもやるのです。<br/>
* 主な用途としては、プログラムの疎通確認をやります。<br/>
* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>
*
* @param args: プログラム引数
*/
public static void main(String args) {
launch(args);
}
/**
* Lesson1. JavaFxでのはじめの一歩<br/>
* Getting started JavaFx on Tutorial<br/>
* この文章がさ記載されている部分をJavaDocコメントと言います。<br/>
*
* @see https://docs.oracle.com/javafx/2/get_started/hello_world.htm
* @author Takunoji
*/
public class Lesson1 extends Application {
/**
* はじめのプログラムは「Hello World」<br/>
* どの言語でもやるのです。<br/>
* 主な用途としては、プログラムの疎通確認をやります。<br/>
* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>
*
* @param args: プログラム引数
*/
public static void main(String args) {
launch(args);
}
/**
* プログラミング学習の基本は「写経」です。<br/>
* 意味はわからなくても「とりあえず」自分でコードを描いてください。<br/>
* インポートするのはjavafx.XXXを選択します。(IDEを使用している場合)
*/
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World");
Button btn = new Button();
btn.setText("Say Hello World!");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
primaryStage.setScene(new Scene(root, 300, 200));
primaryStage.show();
}
}
タイトルに入力イベントと記載しましたが「入力イベント」という言葉は
範囲が広いのでボタン押下(ボタンクリック入力)のイベント処理に着目します。
上のソースでは、「btn.setOnAction(new EventHandler<ActionEvent>() {」
で始まる行がイベント処理の実装部分です。
作成したボタンに「setOnAction()」でイベント処理を設定します。
new クラス名() {無名(のインナー)クラスを定義}
赤い部分がイベントの処理部分になります。
EventHandlerはJavaFxのフレームワークで定義されているインターフェースで
インターフェースの実態部分を実装します。→なので必要な関数をオーバーライドします。
ーーーーーーーーーーーーー
@Orverride
public void handle(ActionEvent event) {
System.out.println("Hello World");
}
ーーーーーーーーーーーーー
ボタン押下時にコンソールへ文字列「Hello World」を出力します。
「このコンソールへ出力する」は「 標準出力へ出力する」とも言います。
標準入力→InputStream
標準出力→OutputSream
結論からいうと
上のメソッドを実装すればボタンのアクションはコントロールできるということです。
そのほかのコンポーネンントはそれぞれに「アクション」「イベント」に対応するメソッドがあるので、そいつを「オーバーライド」してやればOKということです。
これ以上は、実装してみないとわからない部分なので是非自分で「オリジナル画面」を作成してみてください。
自分は、現在「JavaFx制のコマンドプロンプト」を作成中です。
でわでわJavaFxを楽しめることを祈っています。
関連ページ一覧
関連ページ一覧
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
LWJGL
- Chapter1[外枠の表示のみ]
- Chapter2-1〜クラスの構成〜
- Chapter2-2〜インターフェースの使い方と詳細〜
- Chapter2-3〜GameEngineクラス(サンプルクラス)〜/li>
- Chapter2-4〜Windowクラス(サンプルクラス)〜
- Chapter3〜描画処理を読む〜
- Chapter4〜シェーダについて〜
- Chapter5-1〜レンダリングについて〜
- Chapter5-2〜レンダリング詳細〜
- Chapter6〜Projection(投影)〜
- Chapter7-1〜Cubeを作る〜
- Chapter7-2〜Texture〜
- Java 3DGame LWJGL Retry Lv1 〜動かして理解する〜
- Java 3DGame LWJGL Retry Lv2 〜動かして理解する2〜
- Java 3DGame LWJGL Retry Lv3 Texture〜動かして理解する3〜「負け越し」
- Java 3DGame LWJGL Retry Lv4 デバック〜動かして理解する4〜「黒星」
- Java 3DGame LWJGL Retry Lv5 遊んでみる〜動かして理解する5〜「引分け」
- Java 3DGame LWJGL Retry Lv6 遊んでみる2〜動かして理解する6〜「白星」
- ava 3DGame LWJGL Retry Lv7 遊んでみる3〜全部テクスチャにする〜
JavaFx 開発チュートリアル 〜2: 入力イベントを操る(前振りのみ)〜
前回「Hello JavaFx」をやりました。
なので、今回は入力に対する処理を実装してみようと思います。
前回のソースから ソースはここからダウンロードできます。
ダウンロードはここ
「javaの書き方とか、わからんちゃ」という人は下の記事を参考にしてみてください。
http://takunoji.minim.ne.jp/wp/2018/05/02/java-hello-world-はじめのプログラム-〜-step1-1〜/
練習用のプログラムもダウンロード出来る様になっています。(eclipse)
javaソース↓
public class Lesson1 extends Application {
/**
* はじめのプログラムは「Hello World」<br/>
* どの言語でもやるのです。<br/>
* 主な用途としては、プログラムの疎通確認をやります。<br/>
* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>
*
* @param args: プログラム引数
*/
public static void main(String args) {
launch(args);
}
/**
* Lesson1. JavaFxでのはじめの一歩<br/>
* Getting started JavaFx on Tutorial<br/>
* この文章がさ記載されている部分をJavaDocコメントと言います。<br/>
*
* @see https://docs.oracle.com/javafx/2/get_started/hello_world.htm
* @author Takunoji
*/
public class Lesson1 extends Application {
/**
* はじめのプログラムは「Hello World」<br/>
* どの言語でもやるのです。<br/>
* 主な用途としては、プログラムの疎通確認をやります。<br/>
* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>
*
* @param args: プログラム引数
*/
public static void main(String args) {
launch(args);
}
/**
* プログラミング学習の基本は「写経」です。<br/>
* 意味はわからなくても「とりあえず」自分でコードを描いてください。<br/>
* インポートするのはjavafx.XXXを選択します。(IDEを使用している場合)
*/
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World");
Button btn = new Button();
btn.setText("Say Hello World!");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
primaryStage.setScene(new Scene(root, 300, 200));
primaryStage.show();
}
}
※「描いて」→「書いて」
前回は、とりあえずで写経をしたので内容についてふれませんでした。
今回は、内容からいきます。
1.毎度おなじみ「メインメソッド」です。
public static void main(String[] args) {
...処理
}
Javaを起動するときは必ずこれが動きます。※サーバーとかは別の場所で起動します。
初めて、Javaを学ぶ人は、頭ごなしに覚えてしまっても無駄になりません。
筆者は今でも覚えております。→昔、呪文のように唱えて覚えました(笑)
ちなみに、処理内で実行している「launch(args)」は親クラスのメソッドです。
【追申】
子供クラス名 extends 親クラス名 {
private データ型 フィールド変数;
private String fieldClassName:
public static final String CONSTANT_NAME;
private void methodName (String parameter) {
プライベートメソッドの処理
}
public 返却値 メソッド名(データ型 引数名) {
パブリックメソッドの処理
}
}
・メソッド = 関数 = 何かの処理を行う(記載する)もの
・プライベートメソッドは、クラスの外から呼ぶことができない
・パブリックメソッドはクラスの外から呼ぶことができる
・CONSTANT = 定数(この値で変わることがない)
2.startメソッド
親クラス(javafx.application.Applicationを継承している)のメソッドをオーバーライドしている
オーバーライドすると、親クラスからこクラスの「startメソッド」を起動することができる
なので、フレームワークを使用するときによく「〜をオーバーライドして〜」なんて会話がある。詳細に関しては、後々に...
そして、ボタンを作成し、ボタンを押下したときに処理が走る
「アクション」をセットしています。
btn.setOnAction()の部分です。そして左の処理は、下のように書き換えが可能です。
btn.setOnAction(keyEvent -> { Systme.out.println("Hello World"); };
今、流行りなのか、常識なのかわかりませんが、ラムダ式というやつですね。
そして、今回は、このsetOnActionのバリエーションをやろうと思ったのですが、
ここまでにしときましょう(笑)
あ、ちなみに次回は、以下のような画面が表示されるものを作ろうと思います。
テキストエリアに文字を入力してそれに対するイベント処理を行う。。。
こんな感じです。コンソールに入力した文字が表示されています。
でわでわ。。。
関連ページ一覧
JavaFXでハローワールド〜OpenCVまで
- Java 初めてでも大丈夫〜ステップアッププログラミングのススメ〜
- ステップアッププログラミング〜Java FxでHelloWorld解説〜
- Java StepUpPrograming〜JavaFX で四則計算〜
- Java StepUpPrograming〜JavaFXで画面切り替えを作る1〜
- Java StepUpPrograming〜JavaFXで画面切り替え2ボタン作成〜
- Java StepUpPrograming〜JavaFXで画面切り替え3アクション〜
- Java StepUpPrograming〜JavaFXで画面切り替え4Pane切り替え〜
- Java StepUpPrograming〜JavaFXで画面切り替え5WebEngine〜
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
PS VITA PCと接続
<PSP VITAへの接続>
ここのサイトから、VITAへの接続アプリ(コンテンツアシスト)をダウンロードする。
起動してインストール
インストールすると以下のようなアイコンができます。
このアイコンをクリックすると右上には
が表示されます。
この状態で、VITAからPCへ接続すると以下のようなダイアログが出るので「はい」
これでパソコンとVITAの接続ができます。
JavaFx 開発チュートリアル 〜1: Hello JavaFx〜
前回、JavaMeの開発環境の構築を試みましたが、敢え無く断念(今日のところは)
そして、並行して進めたいのがJavaFxを使用する事です。
JavaFxはJavaSE(JDKをダウンロードしたらついてます。)に梱包されています。
そして、画面を作って起動できる(JavaMeで起動すればラズパイなどでも起動可能)
使用するものは「JavaFX Embedded SDK」になるようですが。。。
詳細はこちらのサイトにあります。JavaFXPorts
とりあえず、デプロイする方法が違うという認識です。
そして、JavaFxを始めるのには、JDK1.8以上のものをダウンロードしてくれば
それでOKという事です。
開発ツールのインストール方法は下を参照してください
Java 開発ツールのインストール – PGボックス
でわでわ、コーディングと行きますか?
参考にするサイトは以下になります。
ついでなので、Javaの勉強を始めようと思っている人にも
Javaをある程度学習した人にオススメしています。
初めてやる人は、画面上に色々と表示してみましょう。
ある程度学習した人は、次のステップに行きましょう。
→ある程度とは、プログラムの基礎文法を理解して、List, Mapなどの扱いができる程度
まずは、毎度おなじみ「写経」です。
読む→書く→動かす→理解する→新しいことをやる。。。
とループする感じです。
作成した、コードは以下になります。ダウンロードはここ
package zst.prac.tutorial;
import javafx.event.EventHandler;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
/**
* Lesson1. JavaFxでのはじめの一歩<br/>
* Getting started JavaFx on Tutorial<br/>
* この文章がさ記載されている部分をJavaDocコメントと言います。<br/>
*
* @see https://docs.oracle.com/javafx/2/get_started/hello_world.htm
* @author Takunoji
*/
public class Lesson1 extends Application {
/**
* はじめのプログラムは「Hello World」<br/>
* どの言語でもやるのです。<br/>
* 主な用途としては、プログラムの疎通確認をやります。<br/>
* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>
*
* @param args: プログラム引数
*/
public static void main(String args) {
launch(args);
}
/**
* プログラミング学習の基本は「写経」です。<br/>
* 意味はわからなくても「とりあえず」自分でコードを描いてください。<br/>
* インポートするのはjavafx.XXXを選択します。(IDEを使用している場合)
*/
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World");
Button btn = new Button();
btn.setText("Say Hello World!");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
primaryStage.setScene(new Scene(root, 300, 200));
primaryStage.show();
}
}
いつものようにタブが消えているので上のリンクからダウンロードしてください
実行結果は、以下になります。
ボタンを押下した後、コンソールに出力されるのでEclipseの方を
みてみてください。
初めての人は細かいことは置いておき。。。以下の3つ覚えてください。
1. プログラムは必ず上から下に流れる
2. Javaの場合は、必ず「mainメソッドが動く」
3. メインメソッドは以下のように書く(丸暗記でも良い)
※こう書かなければメインメソッドではありません。(笑)
public static void main(String args) {
プログラムの処理
}
ある程度理解している人は、クラスの繋がりを理解しましょう。
※ Javaの文法を理解している程度の人
今回作成したクラスは、「Lesson1」です。
このクラスは、javafx.application.Applicationクラスを継承しています。
そして、親クラスのメソッド「startメソッド」をオーバーライドしています。
とりあえず、赤字の単語を覚えてください。
写経したら、プログラムの内容を書き換えて動かしてみてください。
ファイルが元に戻せなくなったら上記のリンクからダウンロードすれば良いです。
でわでわ、今日のとろころはここでおしまいです。
関連ページ一覧
Eclipse セットアップ
- Java Install Eclipse〜開発ツールのインストール〜
- TensorFlow C++環境〜EclipseにCDTをインストール〜
- Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
- Eclipse Meven 開発手順〜プロジェクトの作成〜
- Java OpenCV 環境セットアップ(on Mac)
- Eclipse SceneBuilderを追加する
- JavaFX SceneBuilder 〜EclipseとSceneBuilder連携~
Java Basic
- Java Basic Level 1 〜Hello Java〜
- Java Basic Level2 〜Arithmetic Calculate〜
- Java Basic Level3 〜About String class〜
- Java Basic Level 4〜Boolean〜
- Java Basic Level 5〜If Statement〜
- Java Basic Summary from Level1 to 5
- Java Basic Level 6 〜Traning of If statement〜
- Java Basic Level8 〜How to use for statement〜
- Java Basic Level 8.5 〜Array〜
- Java Basic Level 9〜Training of for statement〜
- Java Basic Level 10 〜While statement 〜
- Java Basic Swing〜オブジェクト指向〜
- Java Basic Swing Level 2〜オブジェクト指向2〜
- サンプル実装〜コンソールゲーム〜
- Java Basic インターフェース・抽象クラスの作り方
- Java Basic クラスとは〜Step2_1〜
- Java Basic JUnit 〜テストスイートの作り方〜
Java Discord
- IntelliJ IDEA Discord Botを作る〜Gradle環境のセットアップ〜
- Java Discord セットアップ〜Hello Discord〜
- Java Discord ピンポン〜Discordプログラム〜
- Java Discord Listener実装〜コマンドを好きなだけ追加しよう〜
IntelliJ IDEA
- IntelliJ IDEA 環境構築 〜インストールと起動〜
- IntelliJ IDEA Git〜Gitリポジトリからクローン〜
- IntelliJ IDEA 使い方〜Git接続 Java起動 etc〜
- IntelliJ IDEA Jarファイルを作る
- IntelliJ IDEA 使い方〜Maven Projectの作成〜
- IntelliJ IDEA 使い方〜Mavenでライブラリを追加する〜
- IntelliJ IDEA 使い方〜Javaのコンパイルレベル設定〜
- IntelliJ IDEA Gradleセットアップ〜コマンド入力部の表示〜
- IntelliJ IDEA Discord Botを作る〜Gradle環境のセットアップ〜