我在设计国际象棋游戏时需要帮助.我已经开始了,但还没有走远,因为我对Java很陌生,实际上是编程新手.
无论如何,我有我的抽象类Piece和各个部分作为子类.我有一个方法movePiece,在我的抽象类中,我想为所有子类定义.
它目前所做的就是将这件作品从一个方格移动到另一个方格.我有一个可以容纳Piece对象的Square类,该板由64x1 Square数组组成.
我知道碎片是如何移动的,但我如何实际编程呢?我想尝试应用MVC模式,但这是我第一次使用模式.
基本上我正在考虑使用Graphics2D为每个Square创建一个盒子.然后,当玩家点击一块时,移动后可用作目的地的方块将以某种颜色勾勒出轮廓.玩家点击其中一个方格后,我在movePiece方法中已有的代码将运行.
我想要做的是在Piece的每个子类中覆盖我的movePiece方法.问题是,代码如何在其中一种方法中看到?以Pawn子类为例.
我不是要求复制/粘贴代码,只是关于如何执行此操作的一些指示,最后是一些示例代码.
谢谢!
public class Game {
@SuppressWarnings("unused")
public static void main(String[] args){
Board board = new Board();
} }
public class Board {
Square[] grid;
public Board(){
grid = new Square[64];
}
public Square getSquare(int i){
return grid[i];
}
public void setDefault(){
}
public Boolean isMoveValid(){
return null;
} }
public class Square {
private Piece piece;
public void addPiece(Piece pieceType, String pieceColour, String pieceOwner)
throws ClassNotFoundException, InstantiationException, IllegalAccessException{
PieceFactory factory = new …Run Code Online (Sandbox Code Playgroud) 嘿伙计.我有一个相当大的商业项目(所以付费许可总是一个选项),正在进入Windows领域,我正在计划用WMI做很多轮询.这是一个Java 1.6客户端应用程序.是否有任何好的资源或书籍让我开始在java中完成这个?我觉得我的.NET fu非常强大,但我经常不知道从哪里开始在Java中完成相同的任务.
谢谢!
我知道在QT中使用QML是一个很新的东西,我想知道是否应该使用QTDesigner或QML设计我的应用程序.我将使用MVC模式和我主要担心的是,如果我在GUI中使用QML,那么在我的C++应用程序的reste中集成它可能并不容易.
请随意提出您的个人建议,我将不胜感激.谢谢!
有没有办法获取 Tkinter 文本小部件中当前可见的行?我正在尝试制作一个滚动条。
目前,我正在尝试将滚动条与其他滚动方法(即箭头键和滚轮)协调起来。这样,当我使用箭头键或鼠标滚动时,我的栏也会滚动。
我正在将一个中等大小的C++代码移植到Android NDK.不幸的是,pthreads实现(无论如何,NDK v5)都是不完整的.具体来说,我们的应用程序依赖于pthread_cancel()来终止工作线程.NDK没有实现pthread_cancel()!当工作线程正常响应时,还有其他明显的答案.但是在工作线程没有响应的情况下(例如无限循环),如何在不杀死整个过程的情况下取消它?
如何使用用户名(电子邮件)和密码进行身份验证?提供的示例只调用"authorizer.Authorize()"而不使用凭据(这只会为我抛出"无效的URI"格式异常).我是否需要accessToken?如果需要,我该如何获得?
我在Windows 7计算机上安装了Visual Studio 2010中的项目.它编译并运行没有问题.
当我将应用程序放在具有.NET 4的XP机器上时,它不会运行错误"不是有效的Win32应用程序"
我在这里尝试了一切没有运气:http: //blogs.msdn.com/b/dsvc/archive/2009/06/19/troubleshooting-not-a-valid-win32-application-error-at-the-startup. ASPX
我不知道出了什么问题.有任何想法吗?
谢谢
仅供参考:bindump:
Microsoft (R) COFF/PE Dumper Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
Dump of file TimeKeeper.exe
PE signature found
File Type: EXECUTABLE IMAGE
FILE HEADER VALUES
8664 machine (x64)
2 number of sections
4D24EED9 time date stamp Thu Jan 06 09:21:13 2011
0 file pointer to symbol table
0 number of symbols
F0 size of optional header
22 characteristics
Executable
Application can handle large (>2GB) …Run Code Online (Sandbox Code Playgroud) 这可能是一种愚蠢的做事方式,但这正是我公司所做的......我们在dev中进行架构更改,我们必须随后使用我们的最新版本进入生产阶段.因此,我们手动打开生产SQL 2008数据库,使用设计器进行相关修改,部署新代码,然后希望最好.有时我们忘记对prod架构进行更改,这显然会导致严重的问题.那么,肯定有更好的方法吗?理想情况下,我们希望有一些免费工具来帮助我们识别和部署架构更改,但我不知道存在这样的事情....
我们使用ASP.NET和VS2010,如果这有所作为.
由于raphael JS库的记录很少,我恳求集体智慧.
我有工作.raphael多线折线图(类似于http://g.raphaeljs.com/linechart.html)
类似于:var lineChart = rglinechart(10,10,300,220,[1,2,3,4,5],[[10,20,15,35,30],[5,10,5,15,20]], {shade:true,"colors":["#44F","#CCC"],nostroke:true});
我想改变其中一行来设置fill = clear和stroke =一种颜色
我被告知这样的事情会起作用,但没有运气 - 有什么建议吗?lineChart.lines [0] .attr({stroke:"#000"}),
为了额外的功劳,我如何将线的填充设置为渐变?
谢谢!
我最近学习了实体编程的基本(最粗略的定义)想法,并希望了解更多.我得到的概念几乎只是一个巨大的抽象.这是正确的吗?