Java物件導向練習題(3)

2021-08-20 19:22:52 字數 1967 閱讀 2659

假設乙個房間內鋪有m行n列瓷磚 乙個跳蚤隨機從乙個瓷磚開始,每次隨機選擇乙個方向,前進乙個瓷磚, 當碰到牆時,代表此方向不能前進,試程式設計模擬此過程, 當跳蚤遍歷所有瓷磚時,輸出每塊瓷磚被經歷的次數和跳蚤跳躍的總次數, 要求嚴格按照物件導向的理論,要抽象出相應的類、進行必要的封裝。

根據題目的要求應該需要分成兩個類,分別實現跳蚤的動作和房間的內容

2、構造方法的實現需要實現陣列的初始化

3、自動生成需要的方法,對於陣列的資料獲取和設定需要單獨實現

4、需要有乙個檢測有沒有空格的方法

5、需要實現遍歷地面所有瓷磚的方法

1、設定跳蚤的跳躍方向為私有靜態常量,私有成員變數為跳蚤的座標,和跳躍的總次數以及初始化房間變數

2、構造方法需要對跳蚤的最初座標進行初始化

3、自動生成需要的成員變數的獲取和設定方法,以及其他方法

4、實現跳蚤之後的跳躍動作方法,根據跳蚤跳躍的方向進行陣列的重新填製,每次遍歷需要

5、實現跳蚤的移動方法,對每次遍歷都需要對陣列值和總次數值的改變

package project;

class house

//帶參構造方法

public house(int m, int n)

//獲取房間瓷磚的列數

public int getm()

//獲取房間瓷磚的排數

public int getn()

//獲取房間地面的總數

public int geta()

//獲取陣列的資料

public int getelement(int i, int j)

//設定陣列的資料

public void setelement(int i, int j, int v)

/*** 實現檢測房間瓷磚沒有跳過的地方

* @return boolean 返回true 則有,反之則沒有

*/public boolean checkzero()

return false; }

/*** 實現對陣列的內容進行遍歷,每一排換行

*/public void display()

system.out.println();

} }}public class tiaozao

//獲取跳躍的總次數

public int gettotals()

/*** 設定跳蚤的移動方法,體現在跳蚤的座標變化和陣列內容的變化

* @param int direction 傳入跳蚤跳躍的方向

* @return boolean 如果碰到牆即陣列的邊界,則不能移動,返回false,其他返回true

*/public boolean walk(int direction)

return true;

case down:

if (y == ahouse.getn() - 1)

return false;

else

return true;

case left:

if (x == 0)

return false;

else

return true;

case right:

if (x == ahouse.getm() - 1)

return false;

else

return true;

default:

system.out.println("非法移動!");

return false;

} }/**

* 實現跳蚤的移動方法,在跳過所有的瓷磚後退出迴圈

*/public void move() while (ahouse.checkzero());//當遍歷過所有的瓷磚後退出

}}

public class lianxi5 

}

java物件導向 練習題1

要求完成乙個系統的登入程式,通過初始化引數輸入使用者名稱和mime,如果輸入使用者名為csdn,密碼為admin,則顯示 登入成功 否則顯示 登入失敗 public class testdemoelse 執行結果 那麼現在可以增加一些驗證來完成 public class testdemo if cs...

java物件導向 練習題2

練習1 解決如下實際問題 乙個人 編號,姓名 有一輛車 名稱,顏色 getter,setter略 class member public void setcar car car public car getcar public string getmemberinfo class car publi...

物件導向練習題

一 讀程式 1 寫出下列 的執行結果 class fatherclass public class test extends fatherclass public static void main string args 結果 fatherclass create fatherclass creat...