iPhoneアプリ開発003(HelloWorld!プログラムの中身を調べてみました。)


Ads:

前回はJavaプログラムをコピー&ペーストして「HelloWorld!」と表示させてみました。

001でJDKをインストールしたものの正常に動作できるかがわからないというわけで、正常に動くかどうかを確認するというのが前回の目的だったわけです。

しっかり動作していたので、今回はその「HelloWorld!」プログラムをひとつひとつ見てみたいと思います。これ、完全に自分の勉強用の記事ですね。

 

 

0.参考にさせていただいたサイト

Javaの道:基本事項(3.Hello World)

 

アクセス修飾子(public・protected・private)
アクセス修飾子 …

 

 

1.” class HelloWorld{ “とは?

・「class」の前に「アクセス修飾子」。

「class」を説明する前に、「class」の前側に「public」等がついて「public class HelloWorld{」と表記することがあります。「public」の他に「protected」「private」があり『アクセス修飾子』と呼びます。また、今回のようにアクセス修飾子をつけない場合も意味をもちます。ちなみに、下から上にいくに従って制限が強くなるようです。

・private:同じクラス内のみアクセスが可能

アクセス修飾子なし:同じクラス内、パッケージ内からアクセスが可能

・protected:他ファイル・他クラスからのアクセスをプロテクト

・public:全てのクラスからのアクセスが可能

・「class」とは

javaはclassという固まりを相互に関連させて動作させていくプログラムです。今回のプログラムでいうと「class」からスペースを挟んで続く「HelloWorld」がこのクラスにつけた名前。そして「HelloWorld」というクラスがどういう動きをするかをクラス名「HelloWorld」に続く「{」以降に記述されます。そしてクラスの最後を「}」で締めて一つのクラスとします。

 

 

・「HelloWorld」

これは今回作るclassに対して任意につけた名前です。ターミナルでコンパイルされたプログラムを動作させる場合に利用します。また、日本語文字列(unicode)を使うこともできるようです(例:class ハローワールド{)がおすすめはされていません。

 

・「{」波括弧、ブレース、中括弧

これ以降が今回のクラスに名付けた「HelloWorld」の中身です。中身の指示が終わったら「}」で閉じて一つの固まりとします。

 

 

2.public static void main(String args[]){とは?

・「public」

1行目の部分でも説明したアクセス修飾子です。ちなみにpublicは「すべてのクラスからのアクセスが可能」であることをしめします。

 

・「static」とは

「static(メソッド)」はこの行の中心となる「main(メソッド)」を修飾していて「main(メソッド)」を使う時は「static(メソッド)」使う必要があるようです。また、「static(メソッド)」をつけることで「main(メソッド)」がこのクラス(HelloWorld)に1対1の関係であることを示しています。ちなみに「static」は「静的な」と表現されます。大事なことは「main(メソッド)」を利用するときは「static(メソッド)」とはワンセットということでしょうか。

 

 

・「void」とは

 voidは修飾子で、「何もない」という意味をもちます。今回の場合はmainメソッドが戻り値をもたないことを表しています。「戻り値をもつ」と「戻り値をもたない」の説明としてはここの回答者の方の説明が抜群にわかりやすかったです。こういう回答のできる人になりたい。先のサイトから抜粋して書くと「戻り値をもつ例:URLを送信したら、HTMLが戻る」、「戻り値をもたない例:メールを送信したら処理終了(戻りはなし)」わかりやすい!

 

 

・「main」

javaプログラムは「メソッド」によって構成されています、mainメソッドはプログラムを実行した時に最初に実行される特殊なメソッドです。(ここここが参考になりました)

 

・「String」

String型という型の一種(String型:文字列(例”HelloWorld!”)、char型:文字型(例”H”)などがあります。)

 

・「args」

Arguments(アーギュメント)は「引数(ひきすう)」の意。便宜上使われるだけで「args」でなく「aaa」や「bbb」でもなんでもいい。ただ一般的に「String args[]」でワンセット。さらにいうと「public static void main(String args[])」自体がワンセットで覚える呪文の一種。たぶんこういう部分で悩んでいると先にに進めず挫折というパターンだと気がします。さくっとこのブログ記事書き終えたい。。この呪文「public static void main(String args[])」は暗記。暗記。

 

・「[]」

順番としては正しくは「String[] args」

 

System.out.void.println(“HelloWorld!”):とは?

・「System」

Systemは「java.lang.System」のこと。なぜSystemだけになっているかというと、java langパッケージのクラスはjavaの基本的なものなので表記が不用なので記述するのは「System」のみです。(System.ou.println(“HelloWorld!”)の暗黒面についてはここが面白かったです。この方の言っていることがそのうちわかるといいな。いまはちんぷんかんぷん。)

 

・「out」

out(標準出力)はstaticフィールドの一つ(他に「in(標準入力)」「err(標準エラー出力)」がある)。ここの記事がわかりやすかったです。

 

・「println」

画面へ表示するメソッド。大文字で書くと「PRINTLN」、PRINT LINEの略だそうです。lineは「行」、改行を指します。今回のプログラムでいうと「HelloWorld!(改行)」となるわけです。改行を入れたくない場合(文字列を続けて表示させたい時)は「pintメソッド」を利用します。

 

・「(“HelloWorld!”);」

printlnで表示させる文字列(HelloWorld!)を書きます。終わりの「;(セミコロン)」は分の終わりを表します。

 

・「}」

波括弧閉じ。クラス「HelloWorld!」内に作ったブロックの中のブロックとして、「System.out.prinln(“HelloWorld!”);」を閉じています。

 

・「}」

こちらはクラス「HelloWorld」内につくった外側のブロック。

 

 

まとめ

前回の記事で作った「HelloWorld!」を表示させるプログラムの中身を見てみました。奥が深いですね。

javaは「クラス」によって成り立っていて、public.static.void.main(string args[])が最初に実行されるということ。クラス名は「カタカナ」などでもいい、argsが変数名なのでなんでもいいなど「へー」ということばかりでした。

プログラムで作られたもの(アプリ)などを毎日iPhoneで触っているのに、その中身を知らないというのはそれはそれで不思議だなと思いました。

次のjavaの勉強内容ですが会社のプログラムできる方に聞いたところ、次は「計算させてみたらいいんじゃない?」ということなのでそちらを試してみたいと思っています。

 

Xcode
∟Xcodeのインストール手順
Java
∟001 Javaの開発キット「JDK」のインストールと確認手順
∟002 MacのJavaで「HelloWorld!」プログラムを作成してみました。
∟003 002で作ったHelloWorld!プログラムの中身を調べてみました。

 

Ads:

[`evernote` not found]

Tagged: