Java 将布尔方法从一个类传递到另一个类
我有两个名为CastlingCheck.java和Board.java的java文件。java包含一个布尔方法(testcasting),我想在Board.java中调用它 CastlingCheck.java:Java 将布尔方法从一个类传递到另一个类,java,methods,boolean,Java,Methods,Boolean,我有两个名为CastlingCheck.java和Board.java的java文件。java包含一个布尔方法(testcasting),我想在Board.java中调用它 CastlingCheck.java: package chess; public class CastlingCheck extends Board{ public boolean testCastling(int oldX, int oldY, int newX, int newY) { int deltax =
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...
我做得对吗?在面向对象编程中,您的目标是模仿真实世界 所以,首先,问自己这个问题:一个CaslingCheck是一个棋盘吗 答案是:不,不是。所以CastlingCheck不是一块板 在OO中,这种问题称为继承,用extends关键字编程 所以,CastlingCheck不应延伸板 要立即解决问题,请安装CastingCheck类并调用该方法 因此,在董事会课程中:
CastlingCheck cc = new CastlingCheck();
boolean b = cc.testCastling(...);
但是,您最好遵循一些设计原则,如众所周知的MVC。互联网上有很多关于这方面的信息。CastlingCheck不是一块板。我知道。CastlingCheck只是一个类,它包含一个我想在Board类中调用的方法。另外,它不是应该是
布尔b=cc.textcasting(0,0,0,0)
?@StefaanNeyts