SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
Android開発講座
              03月09日

13年3月12日火曜日
前回のおさらい
                       →Googleの開発した汎用OS。様々なメーカーから
・Androidとは何か?           様々なバージョンの製品が作られている。高い自由度
                        が特徴

・Androidアプリ開発          →Java,Android SDK, Eclipseなど様々なソフト
    ∟開発環境               の複合環境
                       →プロジェクトの作成、レイアウト構築(XML)
    ∟開発から実行の流れ          とプログラミング(JAVA)、実行とデバッグ

・アプリ開発の流れ
    ∟企画       →コンセプトを考え、要素を組み立てる

          →画面デザインなどUI設計(レイアウトの編集)
    ∟デザイン  デザインソフトによるパーツの作成
           イラストレーターの使用方法

    ∟実装       →・アルゴリズムの理解(ボタンイベント、条件分岐、繰り返し処理など)
               ・プログラムの文法理解(“=”,if文,purasuメソッドなど)
               ・プログラム的な落とし込み(アプリ、それを使う人の動作から)

13年3月12日火曜日
§アプリ開発方法のまとめ
   ・アプリ作成の流れ
    →コンセプト、デザイン、コーディング
   ・アルゴリズム
    →入出力、演算、条件分岐、ループetc
   ・オブジェクト指向プログラミング
    →クラス(フィールド、メソッド)




13年3月12日火曜日
§構想から製作まで
   ・アプリ作成の流れ
    →コンセプト、デザイン、コーディング

 作りたいアプリのアイデアは人に説明出来ますか?
 アプリのデザイン、画面遷移は図にできますか?
 必要な処理について洗い出しができますか?


              コンセプト、デザイン、コーディングは
              順番に進めていきましょう


13年3月12日火曜日
§プログラムの実際の処理内容
   ・アルゴリズム
    →入出力、演算、条件分岐、ループetc

 if, switch, for, while文は正しく書けますか?
 処理させたい内容をプログラムに落とし込めますか?

              具体的な処理の実現方法、それらを組み
              合わせて複雑な処理を行わせる方法、両
              方とも出来る必要があります


13年3月12日火曜日
§オブジェクト指向について
   ・オブジェクト指向プログラミング
    →クラス(フィールド、メソッド)

   オブジェクト指向とは何か?
   オブジェクト、クラス、インスタンスとは何?
   インスタンスのメンバへのアクセス方法は?


              目標:これまで作ってきたアプリのコー
              ドを読める(理解できる)ようにしよう


13年3月12日火曜日
§本日の学ぶ事項
 ・Androidコンポーネント


 ・Acticityのライフサイクル


 ・画面遷移とIntent


 ・Android Manifest


 ・イベント処理について


 ・エラーの対処方法




13年3月12日火曜日
§本日のおさらい
 ・Androidコンポーネント       →Activity, Service,Broadcast receiver, Content Providerの4つ
                       が存在。一つの画面に対して一つのActivityが対応

 ・Acticityのライフサイクル →Activityが生成されてから、消滅するまでには一定の流れが
                   存在。その中で、onCreate(), onPause()などはライフサイク
                       ルの中で自動的に呼び出されるメソッド

 ・画面遷移とIntent        →IntentはAndroidにおける連絡役。画面遷移やデータの受け渡
                     しなどに使用する。アプリ間での使用も可能


 ・Android Manifest   →プロジェクトの情報を管理している。画面を増や
                     したらManifestへも記載する


 ・イベント処理について →代表例:ボタンのクリックについても複数
                     の処理が存在。

                     →R.javaが存在しない時はXMLファイルのエラー。
 ・エラーの対処方法




13年3月12日火曜日
オブジェクト指向
              説明補足

13年3月12日火曜日
オブジェクト指向とは??                                   分かりやすさ重視で正確な定義などから
                                                    は外れています。ご留意下さい



 ◆抽象的な概念                                   ◆具体的な形式         プログラムに落としこむと…


 オブジェクト… データ と 処理方法 をまとめた集合                クラス… フィールド と メソッド を指定する
 メッセージ…オブジェクト同士が受け渡す情報                     オブジェクトの定義(みたいなもの)
                                           インスタンス…クラスを基に生成される具体的
 →オブジェクトという、相互に連絡しあう構成単位                   なデータの集合( データ と 処理方法 を持っ
 でプログラムを組み立てる設計思想の事                        ているので、オブジェクトとなる)


                   オブジェクト
                              メ
                               ッ
                   フィールド          セ
                                   ー
                                      ジ
                                       の
                                          や      オブジェクト
                                           り
      オブジェクト                                取
                    メソッド                     り
                                                 フィールド
       フィールド                                                ◆メッセージの内容
                                                           値の読み取り、書き込み
                                                 メソッド
                                                            メソッドの実行命令
        メソッド
                                                                etc
                            オブジェクト

                            フィールド


                            メソッド




13年3月12日火曜日
クラス:フィールドとメソッド
 ◆クラス
 クラスはオブジェクトの設計図として考えることができます。大きく分けてフィールド
 (メンバ変数)とメソッドから成り立ちます。
 実際にオブジェクトを使用する時はクラス(設計図)から、インスタンス(実物)を作成
 して、使用します

                具体例

  TextViewクラス                  メソッドの形式          Javaの場合
                               (アクセス修飾子) (戻り値の型) メソッド名 (引数の型 引数名){
              フィールド                メソッドの内容
                               }
          android:text
                               コードを理解するために(メソッド内の変数)
                               メソッドの中で宣言された変数などは、メソッド内のみ有効
               メソッド            →クラスの変数(フィールド)とは区別されるので注意
    public final void setText

     (CharSequence text)       フィールドの形式            Javaの場合
    ・・・                        (アクセス修飾子) (型) フィールド名;




13年3月12日火曜日
インスタンスの作成、関連付け
   TextViewクラス                          クラス名 インスタンス名;
                                       と書くことでインスタンスを
               フィールド                        作成する


              android:text

                                      	 private TextView mTextNumber;
                                      	 private TextView mTextAho;
                メソッド
     public final void setText
                                      	 private TextView mTextRatio;

      (CharSequence text)                  コードを理解するために(基本型と参照型)
                                           変数には基本型(int doubleなど)と参照型という物が存在する。
     ・・・                                   基本型は 値 のみ!
                                           参照型はクラスから作られるインスタンスなので、 値 と メソッド を
                                           持っている。どちらもクラスのフィールドとして使用可能


       コードを理解するために(インスタンスとXMLオブジェクトの関連付け)

    Javaのフィールド                                XMLのオブジェクト
     mTextNumber = (TextView)findViewById(R.id.textView_number);
     mTextAho = (TextView) findViewById(R.id.textView_aho);
     mTextRatio = (TextView) findViewById(R.id.textView_ratio);
                             キャスト           メソッド名            int型
                        int型からTextView型へ
13年3月12日火曜日
フィールド、メソッドへのアクセス
 ◆インスタンスのフィールド、メソッドの使用方法

 インスタンスはクラス(設計図)が持つフィールド、
 メソッドを使用することができます。


     Carクラス(設計図)
                     フィールドの形式
       int number     Car1.number = 20130212;
  String setText()
                              このコードが書かれているオブジェクトから
                     Car1オブジェクト(インスタンス)に値書き込みのメッセージが渡っている




                     メソッドの形式
     Car1(インスタンス)
                     TextView text1;
       int number
                     text1.setText( Car1.setText() );
  String setText()
13年3月12日火曜日
クラスの継承
◆super, Extends, Implementsとは??

クラスは親子関係をもたせる事が可能です。
子供に親の持つ機能を使わせる事ができるようになります

                                    Javaの全ての親クラス
                                     Java.lang.Object
コードを理解するために(アクセス修飾子)
                                                         コードを理解するために(オーバーライド)
public, private, protectedなどはアクセス
                                                         親クラス(スーパークラス)から継承したメ
修飾子という物です。そのデータに対して、
のアクセス(読み込み書き込みなど)の制限
                                    親クラス                 ソッドの内容を、変更して、新しいメソッド
                                                         内容を作成すること。
を行なっている
                                     MethodA()




              子クラスA           親クラスは一つしか持つこ
                              とができない。それゆえ、                 子クラスB
                              クラスは全て樹形図の様に
            MethodA()                                   @override
                              繋がっている
           親メソッドの使用                                     MethodA(int number)
            MethodB()                                      オーバーライド
          メソッドの新規作成
13年3月12日火曜日
コードを実際に読んでみよう(ex:カウントアプリ)

                           import:使用するクラスがSDKの中のどこにあるのかを指定


                            クラス         class クラス名 extends 親クラス:Activityクラスを基に
                                        カウントアプリで表示されるActivityを作成する

                           Activityクラスのフィールドを指定:他のクラス(TextView)からインスタンス
                 フィールド     を作成して、このクラスの変数としている。

                                           onCreate():このActivityのインスタンスが作られ
                                           た時(=アプリ起動時)に呼ばれるメソッド


                                           findViewById():Activityの変数とXMLを関連付け

                       メソッド     purasu():このクラスが持つメソッド。ボタンからのイベントが引数
                                (この場合は実行条件の意味合い)となり、void型なので、戻り値を出
                                さない。



              setText():Text1はこのクラスの変数と同時に、TextViewクラスのインスタンスな
              ので、そのメソッドを呼び出している。表示内容はStringクラスの静的メソッド
              format()によって、int型のnumberから変換した文字列




13年3月12日火曜日
参考:Objective-cでの表現

  クラスの宣言      @interface クラス名:スーパークラス{
               メンバ変数
      hファイル    }
               メソッド宣言
              @end

  クラスの実装      #import hoge.h
              @implementation
    mファイル        各種実装
              @end

13年3月12日火曜日
文字列 @ 文字列
                       cf) オブジェクト名.メソッド名()


  メッセージ式       [オブジェクト名 メソッド名]
                    オブジェクト間でメッセージを送っている事を表現している
                           ([メッセージの宛先 内容])




  メソッド
 -(戻り値の型) メソッド名 : (引数の型) 引数名 ラベル名 : (引数の型) 引数名




13年3月12日火曜日

Mais conteúdo relacionado

Semelhante a 【LiT Leaders】Android0309

Javaセキュアコーディングセミナー東京第1回 講義
Javaセキュアコーディングセミナー東京第1回 講義Javaセキュアコーディングセミナー東京第1回 講義
Javaセキュアコーディングセミナー東京第1回 講義
JPCERT Coordination Center
 
次世代DaoフレームワークDoma
次世代DaoフレームワークDoma次世代DaoフレームワークDoma
次世代DaoフレームワークDoma
Toshihiro Nakamura
 

Semelhante a 【LiT Leaders】Android0309 (20)

Javaについて学んだこと2
Javaについて学んだこと2Javaについて学んだこと2
Javaについて学んだこと2
 
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方
 
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
pi-15. カプセル化, MVCモデル, オブジェクトのマッピングpi-15. カプセル化, MVCモデル, オブジェクトのマッピング
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
 
Unityで覚えるC#
Unityで覚えるC#Unityで覚えるC#
Unityで覚えるC#
 
Swim_2013_02_19_jpn
Swim_2013_02_19_jpnSwim_2013_02_19_jpn
Swim_2013_02_19_jpn
 
XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
XPagesDay2015 - 誰も教えてくれなかったデバッグ方法XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
 
[DL輪読会]Adversarial Text Generation via Feature-Mover's Distance (NIPS 2018)
[DL輪読会]Adversarial Text Generation via Feature-Mover's Distance (NIPS 2018)[DL輪読会]Adversarial Text Generation via Feature-Mover's Distance (NIPS 2018)
[DL輪読会]Adversarial Text Generation via Feature-Mover's Distance (NIPS 2018)
 
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
 
Javaセキュアコーディングセミナー東京第1回 講義
Javaセキュアコーディングセミナー東京第1回 講義Javaセキュアコーディングセミナー東京第1回 講義
Javaセキュアコーディングセミナー東京第1回 講義
 
Thinking in Cats
Thinking in CatsThinking in Cats
Thinking in Cats
 
これからはじめる XAML - WPF プログラミング
これからはじめる XAML - WPF プログラミングこれからはじめる XAML - WPF プログラミング
これからはじめる XAML - WPF プログラミング
 
ちいさなオブジェクトでドメインモデルを組み立てる
ちいさなオブジェクトでドメインモデルを組み立てるちいさなオブジェクトでドメインモデルを組み立てる
ちいさなオブジェクトでドメインモデルを組み立てる
 
Rawlerフレームワーク(全体)
Rawlerフレームワーク(全体)Rawlerフレームワーク(全体)
Rawlerフレームワーク(全体)
 
Cpp v3
Cpp v3Cpp v3
Cpp v3
 
デザインパターン勉強会
デザインパターン勉強会デザインパターン勉強会
デザインパターン勉強会
 
PHP基礎勉強会
PHP基礎勉強会PHP基礎勉強会
PHP基礎勉強会
 
20120831 mongoid
20120831 mongoid20120831 mongoid
20120831 mongoid
 
人工知能10 サポートベクトルマシン
人工知能10 サポートベクトルマシン人工知能10 サポートベクトルマシン
人工知能10 サポートベクトルマシン
 
次世代DaoフレームワークDoma
次世代DaoフレームワークDoma次世代DaoフレームワークDoma
次世代DaoフレームワークDoma
 
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
 

Último

TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
 

Último (8)

TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
 
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
2024年度 東京工業大学 工学院 機械系 大学院 修士課程 入試 説明会 資料
 
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
次世代機の製品コンセプトを描く ~未来の機械を創造してみよう~
 
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
世界を変えるクレーンを生み出そう! 高知エンジニアリングキャンプ2024プログラム
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 

【LiT Leaders】Android0309

  • 1. Android開発講座 03月09日 13年3月12日火曜日
  • 2. 前回のおさらい →Googleの開発した汎用OS。様々なメーカーから ・Androidとは何か?  様々なバージョンの製品が作られている。高い自由度  が特徴 ・Androidアプリ開発 →Java,Android SDK, Eclipseなど様々なソフト ∟開発環境  の複合環境 →プロジェクトの作成、レイアウト構築(XML) ∟開発から実行の流れ  とプログラミング(JAVA)、実行とデバッグ ・アプリ開発の流れ ∟企画 →コンセプトを考え、要素を組み立てる →画面デザインなどUI設計(レイアウトの編集) ∟デザイン  デザインソフトによるパーツの作成  イラストレーターの使用方法 ∟実装 →・アルゴリズムの理解(ボタンイベント、条件分岐、繰り返し処理など)  ・プログラムの文法理解(“=”,if文,purasuメソッドなど)  ・プログラム的な落とし込み(アプリ、それを使う人の動作から) 13年3月12日火曜日
  • 3. §アプリ開発方法のまとめ ・アプリ作成の流れ  →コンセプト、デザイン、コーディング ・アルゴリズム  →入出力、演算、条件分岐、ループetc ・オブジェクト指向プログラミング  →クラス(フィールド、メソッド) 13年3月12日火曜日
  • 4. §構想から製作まで ・アプリ作成の流れ  →コンセプト、デザイン、コーディング 作りたいアプリのアイデアは人に説明出来ますか? アプリのデザイン、画面遷移は図にできますか? 必要な処理について洗い出しができますか? コンセプト、デザイン、コーディングは 順番に進めていきましょう 13年3月12日火曜日
  • 5. §プログラムの実際の処理内容 ・アルゴリズム  →入出力、演算、条件分岐、ループetc if, switch, for, while文は正しく書けますか? 処理させたい内容をプログラムに落とし込めますか? 具体的な処理の実現方法、それらを組み 合わせて複雑な処理を行わせる方法、両 方とも出来る必要があります 13年3月12日火曜日
  • 6. §オブジェクト指向について ・オブジェクト指向プログラミング  →クラス(フィールド、メソッド) オブジェクト指向とは何か? オブジェクト、クラス、インスタンスとは何? インスタンスのメンバへのアクセス方法は? 目標:これまで作ってきたアプリのコー ドを読める(理解できる)ようにしよう 13年3月12日火曜日
  • 7. §本日の学ぶ事項 ・Androidコンポーネント ・Acticityのライフサイクル ・画面遷移とIntent ・Android Manifest ・イベント処理について ・エラーの対処方法 13年3月12日火曜日
  • 8. §本日のおさらい ・Androidコンポーネント →Activity, Service,Broadcast receiver, Content Providerの4つ が存在。一つの画面に対して一つのActivityが対応 ・Acticityのライフサイクル →Activityが生成されてから、消滅するまでには一定の流れが 存在。その中で、onCreate(), onPause()などはライフサイク ルの中で自動的に呼び出されるメソッド ・画面遷移とIntent →IntentはAndroidにおける連絡役。画面遷移やデータの受け渡 しなどに使用する。アプリ間での使用も可能 ・Android Manifest →プロジェクトの情報を管理している。画面を増や したらManifestへも記載する ・イベント処理について →代表例:ボタンのクリックについても複数 の処理が存在。 →R.javaが存在しない時はXMLファイルのエラー。 ・エラーの対処方法 13年3月12日火曜日
  • 9. オブジェクト指向 説明補足 13年3月12日火曜日
  • 10. オブジェクト指向とは?? 分かりやすさ重視で正確な定義などから は外れています。ご留意下さい ◆抽象的な概念 ◆具体的な形式 プログラムに落としこむと… オブジェクト… データ と 処理方法 をまとめた集合 クラス… フィールド と メソッド を指定する メッセージ…オブジェクト同士が受け渡す情報 オブジェクトの定義(みたいなもの) インスタンス…クラスを基に生成される具体的 →オブジェクトという、相互に連絡しあう構成単位 なデータの集合( データ と 処理方法 を持っ でプログラムを組み立てる設計思想の事 ているので、オブジェクトとなる) オブジェクト メ ッ フィールド セ ー ジ の や オブジェクト り オブジェクト 取 メソッド り フィールド フィールド ◆メッセージの内容 値の読み取り、書き込み メソッド メソッドの実行命令 メソッド etc オブジェクト フィールド メソッド 13年3月12日火曜日
  • 11. クラス:フィールドとメソッド ◆クラス クラスはオブジェクトの設計図として考えることができます。大きく分けてフィールド (メンバ変数)とメソッドから成り立ちます。 実際にオブジェクトを使用する時はクラス(設計図)から、インスタンス(実物)を作成 して、使用します 具体例 TextViewクラス メソッドの形式 Javaの場合 (アクセス修飾子) (戻り値の型) メソッド名 (引数の型 引数名){ フィールド     メソッドの内容 } android:text コードを理解するために(メソッド内の変数) メソッドの中で宣言された変数などは、メソッド内のみ有効 メソッド →クラスの変数(フィールド)とは区別されるので注意 public final void setText (CharSequence text) フィールドの形式 Javaの場合 ・・・ (アクセス修飾子) (型) フィールド名; 13年3月12日火曜日
  • 12. インスタンスの作成、関連付け TextViewクラス クラス名 インスタンス名; と書くことでインスタンスを フィールド 作成する android:text private TextView mTextNumber; private TextView mTextAho; メソッド public final void setText private TextView mTextRatio; (CharSequence text) コードを理解するために(基本型と参照型) 変数には基本型(int doubleなど)と参照型という物が存在する。 ・・・ 基本型は 値 のみ! 参照型はクラスから作られるインスタンスなので、 値 と メソッド を 持っている。どちらもクラスのフィールドとして使用可能 コードを理解するために(インスタンスとXMLオブジェクトの関連付け) Javaのフィールド XMLのオブジェクト mTextNumber = (TextView)findViewById(R.id.textView_number); mTextAho = (TextView) findViewById(R.id.textView_aho); mTextRatio = (TextView) findViewById(R.id.textView_ratio); キャスト メソッド名 int型 int型からTextView型へ 13年3月12日火曜日
  • 13. フィールド、メソッドへのアクセス ◆インスタンスのフィールド、メソッドの使用方法 インスタンスはクラス(設計図)が持つフィールド、 メソッドを使用することができます。 Carクラス(設計図) フィールドの形式 int number Car1.number = 20130212; String setText() このコードが書かれているオブジェクトから Car1オブジェクト(インスタンス)に値書き込みのメッセージが渡っている メソッドの形式 Car1(インスタンス) TextView text1; int number text1.setText( Car1.setText() ); String setText() 13年3月12日火曜日
  • 14. クラスの継承 ◆super, Extends, Implementsとは?? クラスは親子関係をもたせる事が可能です。 子供に親の持つ機能を使わせる事ができるようになります Javaの全ての親クラス Java.lang.Object コードを理解するために(アクセス修飾子) コードを理解するために(オーバーライド) public, private, protectedなどはアクセス 親クラス(スーパークラス)から継承したメ 修飾子という物です。そのデータに対して、 のアクセス(読み込み書き込みなど)の制限 親クラス ソッドの内容を、変更して、新しいメソッド 内容を作成すること。 を行なっている MethodA() 子クラスA 親クラスは一つしか持つこ とができない。それゆえ、 子クラスB クラスは全て樹形図の様に MethodA() @override 繋がっている 親メソッドの使用 MethodA(int number) MethodB() オーバーライド メソッドの新規作成 13年3月12日火曜日
  • 15. コードを実際に読んでみよう(ex:カウントアプリ) import:使用するクラスがSDKの中のどこにあるのかを指定 クラス class クラス名 extends 親クラス:Activityクラスを基に カウントアプリで表示されるActivityを作成する Activityクラスのフィールドを指定:他のクラス(TextView)からインスタンス フィールド を作成して、このクラスの変数としている。 onCreate():このActivityのインスタンスが作られ た時(=アプリ起動時)に呼ばれるメソッド findViewById():Activityの変数とXMLを関連付け メソッド purasu():このクラスが持つメソッド。ボタンからのイベントが引数 (この場合は実行条件の意味合い)となり、void型なので、戻り値を出 さない。 setText():Text1はこのクラスの変数と同時に、TextViewクラスのインスタンスな ので、そのメソッドを呼び出している。表示内容はStringクラスの静的メソッド format()によって、int型のnumberから変換した文字列 13年3月12日火曜日
  • 16. 参考:Objective-cでの表現 クラスの宣言 @interface クラス名:スーパークラス{ メンバ変数 hファイル } メソッド宣言 @end クラスの実装 #import hoge.h @implementation mファイル 各種実装 @end 13年3月12日火曜日
  • 17. 文字列 @ 文字列 cf) オブジェクト名.メソッド名() メッセージ式 [オブジェクト名 メソッド名] オブジェクト間でメッセージを送っている事を表現している ([メッセージの宛先 内容]) メソッド -(戻り値の型) メソッド名 : (引数の型) 引数名 ラベル名 : (引数の型) 引数名 13年3月12日火曜日