如何在处理中创建类的文件?

时间:2015-09-09 11:39:59

标签: java processing

我正在处理OOP。 我正在使用eclipse,我正在为我的对象制作非常大的类。 我不知道如何在其他java文件中编写我的类的代码。 你能帮我一个例子吗,或者告诉我如何将我的代码分成两份文件。一个用于设置和绘制函数的文件,另一个用于我的PhysicalObject类。

public class MyProcessingSketch extends PApplet {

int i;
PhysicalObject Person;
public void setup() 
{
    Person= new PhysicalObject();
    size(400,400);
    smooth();
    background(0);
  }

 public void draw() 
 {
     //background(24,20,100);
     fill(255,0,0);
     Person.drawObject();
 }

 public class PhysicalObject {
        float objectWidth;
        float objectHeight;
        float posX;
        float posY;
        PhysicalObject()
        {
            posX=width/2;
            posY=height/2;
            objectWidth=50;
            objectHeight=50;

        }
        PhysicalObject(float x, float y,float widthn,float heightn)
        {
            objectWidth=widthn;
            objectHeight=heightn;
            setCenter(x, y);
        }

        public void setCenter(float x, float y)
        {
            posX=x;
            posY=y;
        }

        public void drawObject()
        {
            rectMode(CENTER);
            fill(255,0,0);
            rect(posX,posY,objectWidth,objectHeight);
        }
        public boolean isCollided()
        {
            return true;
        }
        public void drive()
        {

        }

    }

}

2 个答案:

答案 0 :(得分:1)

最简单的方法是将每个类放在一个单独的文件中(在eclipse中, file / new / other / class )。您必须提供一个包(可以将其视为包含该类的文件夹)。最好的选择是进行语义包装(例如,您可以将PhysicalObject放在hitbox包中)

然后,您必须将这些不同的类添加到类路径中,即包含项目所有类路径的变量。如果你在eclipse中创建了一个java项目,这将自动完成。

设置好类路径后,您就可以使用PhysicalObject命令将MyProcessingSketch导入import hitbox.PhysicalObject

答案 1 :(得分:0)

部分问题是在Processing IDE中,所有不同的选项卡都成为一个java文件,因此所有额外的类都是单个主PApplet子类的嵌套类。

正如@fxm建议的那样,你应该能够将类移动到单独的文件中,但是你需要知道一些问题,主要是子类中的PApplet代码。如果它只是绘制函数,您可以传递PGraphics reference,否则,您可以将整个PApplet作为对要访问的类的引用传递。

我在this answer中发布了一些提示,其中还包括将类移动到单独文件中的video重构过程。