将布尔方法从一个类传递到另一个类

时间:2015-04-03 05:42:00

标签: java methods boolean

我有两个名为CastlingCheck.java和Board.java的java文件。 CastlingCheck.java包含一个布尔方法(testCastling),我想在Board.java中调用它。

CastlingCheck.java:

package chess;
public class CastlingCheck extends Board{
public boolean testCastling(int oldX, int oldY, int newX, int newY) {
    int deltax = newX - oldX;
    if (1st condition) {
    **code here**
        return true;
            }

    if (2nd condition) {
    **code here**
        return true;
            }

    if (3rd condition) {
    **code here**
        return true;
            }

    if (4thnd condition) {
    **code here**
        return true;
            }

    return false;
    }
}

Board.java:

package chess;
...code...

public boolean testCastling(int oldx, int oldy, int newx, int newy) {
    return true;
}

...code...

我做得对吗?

1 个答案:

答案 0 :(得分:-1)

在面向对象编程中,你的目标是模仿现实世界。

首先,问问自己这个问题:CastlingCheck是一个董事会吗?

答案是:不,不是。所以CastlingCheck不是董事会。

在OO中,这种问题称为继承,使用extends关键字编写。

因此,CastlingCheck不应该扩展Board。

要立即解决问题,请建立CastlingCheck类的实例并调用方法。

所以在董事会班上:

CastlingCheck cc = new CastlingCheck(); 
boolean b = cc.testCastling(...);

但是你应该更好地遵循一些设计原则,比如着名的MVC。互联网上有很多信息。