Java 如何通过不带参数的方法返回新对象

Java 如何通过不带参数的方法返回新对象,java,methods,copy,copy-constructor,Java,Methods,Copy,Copy Constructor,我是一名Java初学者,我想问一下如何使用一个没有给定参数的方法返回一个新对象 说明如下: «无参数的方法分割,允许单元格分割; 方法除法返回一个新单元格;新单元格是前一单元格的副本;然后,复制品的颜色会发生变化;» 我的问题是,我如何在方法中实现复制构造函数,所以如果我调用Cell.division,它会将Cell作为对象并复制它 如果我写 public Cellule division(){ Cell tmpCell = new Cell(object); //some

我是一名Java初学者,我想问一下如何使用一个没有给定参数的方法返回一个新对象

说明如下: «无参数的方法分割,允许单元格分割; 方法除法返回一个新单元格;新单元格是前一单元格的副本;然后,复制品的颜色会发生变化;»

我的问题是,我如何在方法中实现复制构造函数,所以如果我调用Cell.division,它会将Cell作为对象并复制它

如果我写

    public Cellule division(){
    Cell tmpCell = new Cell(object);
   //some mutations I need to code
    return tmpCell;
它表示对象不能解析为变量

单元类的代码:

private String nom;
private double taille;
private int energie;
private String couleur;

//default
public Cellule(){
    nom = "Pyrobacculum";
    taille = 10;
    energie = 5;
    couleur = "verte";
}

//copy constructor
public Cellule(Cellule autreCellule){

    energie = autreCellule.energie;
    taille = autreCellule.taille;
    nom = autreCellule.nom;
    couleur = autreCellule.couleur;

}

//parameters
public Cellule(String nom, double taille, int energie, String couleur){
    this.taille = taille;
    this.energie = energie;
    this.nom = nom;
    this.couleur = couleur;

}

//return Energy
public int getEnergie(){
    return energie;
}
//return Height
public double getTaille(){
    return taille;
}

//outprint
public void affiche(){
    System.out.println(nom + ", taille = " + taille + " microns, énergie = " 
+ energie + ", couleur = " + couleur );
}

//division method
 public Cellule division(){
    Cell tmpCell = new Cell(object);
   //some mutations I need to code
    return tmpCell;
非常感谢

因为您没有将对象作为参数传递,也没有将其声明为局部变量,所以无法将其抛出对象解析为变量错误

因此,在您的情况下,它需要在全球范围内声明

class Cell {
    int i;
    Cell c= new Cell(2);

    Cell(Cell clone ) {
        this.i = clone.i;
    }

    Cell(int i ) {
        this.i = i;
    }
    public Cell division(){
        Cell tmpCell = new Cell(c);

        return tmpCell;
    }
}

发布单元类的代码。我已经编辑了我的问题!在哪里定义division方法?division必须是成员才能访问封闭类的实例。关键字/标识符不是object,但thisdivision是类的成员。我忘了这个。它成功了。谢谢!