创建一个参数化的构造函数
问题描述:
所以,我现在正在做家庭作业。但是,我坚持这个任务的几个部分。创建一个参数化的构造函数
public class CheeseCake {
//Instance Variables
private double Cheese;
private int StrawBerry;
private double Cream;
public CheeseCake() {
Cheese = 0;
StrawBerry = 0;
Cream = 0;
}
//Constructor
public CheeseCake (double milk, int fresh, double temp)
{
Cheese = milk;
StrawBerry = fresh;
Cream = temp;
}
// (setter)
public void setCheese(double milk){
Cheese = milk;
}
public void setStrawBerry(int fresh){
StrawBerry = fresh;
}
public void setCream(double temp){
Cream = temp;
}
//(getter)
public double getCheese(){
return Cheese;
}
public int getStrawBerry(){
return StrawBerry;
}
public double getCream(){
return Cream;
}
{
}
//Method to display data, (need to work on this)
public void display() {
System.out.println(Cheese);
System.out.println(StrawBerry);
System.out.println(Cream);
System.out.println("You used " + Cheese + " g of Creamcheese to make Cheese");
System.out.println("You used " + StrawBerry + " StrawBerry to make StrawBerry CheeseCake");
System.out.println("You used " + Cream + " g of Cream to make Cream Cheese");
}
}
这是我的演示帮助我运行这个程序。
public class Demo {
public static void main(String[] args) {
CheeseCake cheesecake = new CheeseCake();
cheesecake.setCheese(5);
cheesecake.setStrawBerry(20);
cheesecake.setCream(10);
cheesecake.display();
}
}
所以,我的问题是我完成创建3个实例方法和getter,setter方法。 另外,我创建了我的默认构造函数。 但我不知道如何创建这个参数化的构造函数。 “ ”创建一个参数化构造函数,它将所有实例变量作为参数,并将实例变量设置为参数“
”提供的值。另外,我不确定我的老师希望我在演示方法中做什么。
创建一个名为Demo.java的类。该类将包含您的主要方法 使用默认构造函数创建类的实例。 调用所有对象设置方法为对象分配值 调用对象显示方法,打印出其值 使用参数化构造函数创建类的另一个实例 调用对象的显示方法,打印出它的值
我的演示方法是对的吗?或者我应该添加更多的东西。另外,我应该添加更多的构造函数来创建参数化的构造函数吗?我不知道如何制作参数化的构造函数。
答
默认构造函数不带任何参数。你的第二个构造函数是一个参数化的构造函数。而你的代码是好的,你只需要创建一个参数化复制构造函数,它将另一个实例作为参数。即
public CheeseCake (CheeseCake ck)
{
Cheese = ck.getCheese();
StrawBerry = ck.getStrawBerry();
Cream = ck.getCream();
}
,现在你需要使用此构造
芝士cheesecake2 =新的芝士蛋糕(芝士),以创建演示类的实例; //把第一个对象作为参数
现在调用显示方法为第二个对象。
最好的人交谈,为澄清分配你的老师给你的就是你的老师。这实际上是他们的工作,告诉你这种事情。 – azurefrog
“我不知道如何制作参数化的构造函数。”但你似乎已经有一个? –
所以我想念默认的构造函数?我对默认构造函数和参数化构造函数之间的区别感到困惑 –