オブジェクト指向Javaプログラミング入門 第2章 Eclipseと簡単なオブジェクト 指向プログラミング 近代科学社©2008 Toru Kato Masahiro Higuchi Shiro Takata 今日の内容 1. 実施要領の把握(実習ノートを見ながら説明する) 2. Eclipse使用方法の習得 3. 簡単なオブジェクト指向プログラミング 4. 演習課題 の作成と提出 今日の内容 1. 実施要領の把握(実習ノートを見ながら説明する) 2. Eclipse使用方法の習得 (教科書を見ながら実際に使用する) • p.10 Eclipse の起動 • p.13 ソースコードはEUCのまま • p.14 プロジェクトの作成 • p.15 HelloWorldクラスの作成 今日の内容 1. 実施要領の把握(実習ノートを見ながら説明する) 2. Eclipse使用方法の習得 3. 簡単なオブジェクト指向プログラミング (教科書を見ながら実際に使用する) • p.18 クラスとは • p.19 Rectangleクラス オブジェクト指向 世の中にあるものは,全てオブジェクト オブジェクトをクラス(class)に分類 class 人間 class 機器 class 動物 class 建物 class 乗り物 class 植物 オブジェクトを主体としてプログラムを記述 オブジェクト指向プログラミング クラスRectangle x座標 y座標 属性 幅 高さ できること 移動する 状態を表示 オブジェクト指向プロ グラミングでは、まず 対象とするもの(例え ば座標平面上の長方 形)の特徴を抽出し、 クラスを作ることから 始める。 オブジェクト指向プログラミング オブジェクト クラスRectangle rectangle1 x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 具体的な「rectangle1」は、Rectangle 移動する クラスのオブジェクトである。各属性 状態を表示 に具体的な値を持つ。 オブジェクト指向プログラミング オブジェクト クラスRectangle rectangle1 x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 移動する そして、そのオブジェクトに 状態を表示 仕事をさせる。 オブジェクト指向プログラミング オブジェクト クラスRectangle rectangle1 x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 移動する 状態を表示して! 状態を表示 オブジェクト指向プログラミング オブジェクト クラスRectangle x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 移動する 状態を表示 rectangle1 x座標2, y座標1, 幅5, 高さ6 オブジェクト指向プログラミング オブジェクト クラスRectangle x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 移動する 状態を表示 rectangle1 x座標方向に2 y座標方向に2 だけ移動して! オブジェクト指向プログラミング オブジェクト クラスRectangle x座標 =4 y座標 属性 =3 幅 =5 高さ =6 できること 移動する 状態を表示 rectangle1 オブジェクト指向プログラミング オブジェクト クラスRectangle x座標 y座標 属性 幅 高さ できること 移動する 一つのクラスの、幾つものオブ 状態を表示 ジェクトを作ることができる。 オブジェクト指向プログラミング オブジェクト クラスRectangle x座標 y座標 属性 幅 高さ できること 移動する 状態を表示 オブジェクトたちに仕事をさせる ことで問題を解決する 簡単なオブジェクト指向プログラム p. 20 プログラム例2.2.1 1 public class Rectangle { 2 private int width; 3 private int height; 4 private int xPosition; 5 private int yPosition; 6 7 public Rectangle(int width, int height, int xPosition, int yPosition) { 8 this.width = width; 9 this.height = height; 10 this.xPosition = xPosition; 11 this.yPosition = yPosition; 12 } 13 14 public void move(int xMove, int yMove) { 15 xPosition = xPosition + xMove; 16 yPosition = yPosition + yMove; 17 } 18 19 public void printInfo() { 20 System.out.print(" x座標: " + xPosition + ", y座標 : " + yPosition); 21 System.out.println(", 幅: " + width + ", 高さ: " + height); 22 } 23 24 public static void main(String[] args) { 25 Rectangle rectangle1 = new Rectangle(2, 1, 5, 6); 26 27 rectangle1.printInfo(); 28 rectangle1.move(2, 2); 29 rectangle1.printInfo(); 30 } 31 } 簡単なオブジェクト指向プログラム 説明の前に、まず作成して実行してみよう 作成方法 教科書 p. 20 2行目 実行方法 教科書 p. 20 下から3行目 実行結果 x座標2, y座標1, 幅5, 高さ6 x座標4, y座標3, 幅5, 高さ6 1 2 3 4 5 public class Rectangle { private int xPosition; private int yPosition; private int width; private int height; フィールド 14 15 16 17 public void move(int xMove, int yMove) { xPosition = xPosition + xMove; yPosition = yPosition + yMove; } 19 20 public void printInfo() { System.out.print(" x座標: "+xPosition + ", y座標 : " + yPosition); System.out.println(", 幅: " + width + ", 高さ: " + height); } 21 22 1 2 3 4 5 public class Rectangle { private int xPosition; private int yPosition; private int width; private int height; メソッド 14 15 16 17 public void move(int xMove, int yMove) { xPosition = xPosition + xMove; yPosition = yPosition + yMove; } 19 20 public void printInfo() { System.out.print(" x座標: "+xPosition + ", y座標 : " + yPosition); System.out.println(", 幅: " + width + ", 高さ: " + height); } 21 22 オブジェクトの生成方法を、コンスト ラクタによって定義する。 オブジェクト クラスRectangle x座標 =2 y座標 属性 =1 幅 =5 高さ =6 できること 移動する 状態を表示 1 public class Rectangle { 2 private int xPosition; 3 private int yPosition; 4 private int width; 5 private int height; コンストラクタ 7 8 9 10 11 12 public Rectangle(int xPosition, int yPosition, int width, int height) { this.xPosition = xPosition; this.yPosition = yPosition; this.width = width; this.height = height; } mainメソッドで実行 24 25 public static void main(String[] args) { Rectangle rectangle1 = new Rectangle(2, 1, 5, 6); 26 27 rectangle1.printInfo(); 28 rectangle1.move(2, 2); 29 rectangle1.printInfo(); 30 } 31 } オブジェクトの生成 24 25 public static void main(String[] args) { Rectangle rectangle1 = new Rectangle(2, 1, 5, 6); クラスRectangle x座標 y座標 幅 高さ =2 =1 属性 =5 =6 オブジェクト new Rectangle(2, 2 11, 5, 6); 1 public class Rectangle { 2 private int xPosition; 3 private int yPosition; 4 private int width; 5 5 private int height;6 コンストラクタ 7 8 9 10 11 12 public Rectangle(int xPosition, int yPosition, int width, int height) { this.xPosition = xPosition; this.yPosition = yPosition; this.width = width; this.height = height; } オブジェクトの生成 20 21 public static void main(String[] args) { Rectangle rectangle1 = new Rectangle(2, 1, 5, 6); rectangle1.printInfo(); rectangle1.move(2, 2); rectangle1.printInfo(); } 22 23 24 25 26 }クラスRectangle x座標 y座標 幅 高さ =2 =1 属性 =5 =6 オブジェクト オブジェクトにメソッドを実行させる 20 21 22 23 24 25 26 } public static void main(String[] args) { Rectangle rectangle1 = new Rectangle(2, 1, 5, 6); rectangle1. printInfo() ; rectangle1. move(2, 2) ; rectangle1. printInfo() ; } 実行結果 x座標: 2, y座標: 1 ,幅: 5, 高さ: 6 x座標: 4, y座標: 3 ,幅: 5, 高さ: 6 今日の内容 1. 実施要領の把握(実習ノートに詳述) 2. Eclipse使用方法の習得 3. 簡単なオブジェクト指向プログラミング 4. 演習課題 の作成と提出 教科書(p. 34)の演習問題 2.1 オブジェクトを複数生成するように拡張した Rectangle.javaを作成。実行確認ができたら提出。
© Copyright 2024 ExpyDoc