markdown
#說明
書本程式學習,主要練習物件導向的觀念,這邊專案是 shooting 的練習。
#操作流程
##Code
```
package shooting;
class Igloo {
//武器庫
int x, y;
//進行爆炸的動作
void exploding() {
System.out.println("在(" + x + "," + y + ") 的武器庫被摧毀");
}
}
public class shooting {
public static void main (String [] argv ) {
Igloo i ; // 宣告一個指向 Igloo 類別物件的參照
i = new Igloo() ;
i.x=2;
i.y=3;
i.exploding();//使用物件的方法
}
}
```
##Demo
##use object array
```
package shooting;
class Igloo {
//武器庫
int x, y;
//進行爆炸的動作
void exploding() {
System.out.println("在(" + x + "," + y + ") 的武器庫被摧毀");
}
}
public class shooting {
public static void main (String [] argv ) {
Igloo[] i =new Igloo[2];//建立一個Igloo 物件陣列
i[0] =new Igloo ();
i[1] =new Igloo ();
i[0].x=2; //使用物件成員 i1 的
i[0].y=3;
i[1].x=4;
i[1].y=0;
for (Igloo obj : i)
obj.exploding();
}
}
```
#return
```
package shooting;
class Cannonball { //砲彈
int x,y ;//砲彈位置
int stepX, stepY; //砲彈移動速度及方向
void move() { //依據移動速度換到下一位置
x+= stepX;
y+= stepY;
System.out.println("砲彈移到(" + x + "," + y + ")");
}
}
class Flanker { //砲台
int x,y;//砲台位置
Cannonball fire(int stepX, int stepY ) {
Cannonball c =new Cannonball() ;
c.stepX= stepX;
c.stepY =stepY;
c.x =x;
c.y =y;
return c;
}
}
public class shooting {
public static void main (String [] argv ) {
int x =2;
Flanker f =new Flanker( ); //建立砲台
f.x= 0 ; // 設定位置
f.y = 0; //設定位置
Cannonball c=f.fire(x,1); //發射砲彈
c.move(); //移動砲彈
}
}
```
##概念圖筆記
- code : https://github.com/SYkkk55/java_shooting
留言
張貼留言