2.3:プログラムに慣れよう1
実際にソースを見てきましたが、これからは本格的にどのようにプログラミングを書いていくかの流れを理解していただけることを目標に学んでもらいます。
今回はプログラミングの考え方についての簡単なまとめとなります。
わかりやすいようにあえて比喩的表現を用いるため、すでに理解している方は多少混乱するかもしれません。そのかたは自分の知識で大丈夫だと思います。
では、今回ベースとなる。ソースのご紹介。
package com.hello; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView moji = new TextView(this); moji.setText("Hello, World"); setContentView(moji); } }
MainActivity.java にコピペしても大丈夫ですが、最初のパッケージ名(1行目)や
Jjava名(7行目)に注意してください。
今回はxmlを使用しないでJavaでボタンなどを配置してしまうので、
setContentView(R.layout.activity_main); の部分は使用しません。
そのため実行するとわかりますが、見た目が簡素になっております。
F11を押すと、エミュレータが起動してアプリが実行されるはずです。
左上に文字が書かれるだけで質素ですね。
ソースの中身について考えて見てみましょう。
package com.hello;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
ここについては次回からは説明しません。
パッケージ名を書くのと androidにかんする情報を持ってくるために書きます。
public class MainActivity extends Activity {
前に少し説明したクラスというもの。
class ~ extends 「何をするか」の手続きを書きます。という宣言。(クラス)
ということなので、これから何をするかを書いてあるんだなということがわかりますね。
@Override
protected void onCreate(Bundle savedInstanceState) {
こちらも少し説明したメソッドというもの
@Override
protected void onCreate(Bundle savedInstanceState) { }
ープログラム(ソフト)が起動する時、まずはじめに行う手続きを書くところ(メソッド)
ということなので、起動する時何をするかを書いてあるんだなということがわかります。
実際にそのメソッドの中身を見ると、
TextView moji = new TextView(this);
moji.setText("Hello, World");
setContentView(moji);
とかいてあります。
どういうことが書いてあるのでしょうか。
xmlを見た時にTextViewがあったのですがそのことを覚えていらっしゃいますかね。
そのxmlにあったTextViewと同じです。文字を表示する部分をxmlで作らないで
javaで作っちゃうこともできるのです。
ソースの解説・読み方です。
Text View という形の名前が「moji」という箱があります。
「moji」という箱の中には何が入っているかというと、Hello, World というものが入っています。
そして「moji」という箱を画面に表示します。
図にするとこのような感じです。
もっと抽象的なことを書くと、
ここには、箱があります。この箱は重箱(Text View)です。
この重箱の裏には「管理人」(moji)とかいてありました。
この管理人の重箱には何が入っているのかというとおせち料理(Hello, World)が入っています。
管理人の重箱の中身を画面に表示します。
みたいな感じです。
ではもうすこしソースを長くしてみます。
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); String moji; moji = ("Hello, World"); TextView test = new TextView(this); test.setText(moji); setContentView(test); }
少しだけ長くなりました。
これも少し読んでみて下さい。
読めたでしょうか?図にすると下のようになります。
Text View という形の名前が「test」という箱があります。
test という箱の中には何が入っているかというと、moji というStringという形の箱が入っています。
箱の中身はHello,Worldが入っています。それを画面に表示します。
という訳になります。
このようにある形のある名前の箱を作ることを変数宣言といいます。
変数宣言の方法として、
String moji;
moji = ("Hello, World");
この2つを一体化をして、
String moji = new String("Hello, World");
することもできます。
文字に使用するものとして
test.setText(moji);のsetTextやStringなど が文字に使用することができます。