对Java来说很新,所以请在这里请耐心等待。我必须根据学生的居民身份编写一个程序,以确定该学期的总费用。我必须使用抽象方法(单独的类),然后根据全日制和兼职时间的学费创建类。完整和兼职类必须使用数组。我可能写错了数组列表,但这是我到目前为止所做的,我需要创建一个对象“县”,以便我可以计算住在该县的学生的费用。
我如何拨打学费和资本费,将它们一起添加到索引C中?或者,如果我只为学费和资本费用为县编写一个数组,然后将它们加在一起,然后将该总数加到列出的其他成本上,会更容易吗?此外,当我尝试在县下创建对象时,它会出现错误。我将使用Radio Buttons来确定学生的居民身份是什么(不确定这是否会改变我的计算方法)。任何帮助表示赞赏。
抽象类:
package collegecost1;
public abstract class collegeAbMain {
public abstract double tuition();
public abstract double capitalFee();
public abstract double accidentIns();
public abstract double collegeFee();
//public abstract double county();
//public abstract double outCounty();
//public abstract double outState();
}
全时分类:
package collegecost1;
public class fullTime extends collegeAbMain {
double C;
double OC;
double OS;
double Ins;
double fee;
double total;
@Override
public double tuition() {
double resident = 3;
double [] tuition = new double [(int) resident];
// I have to use the variables C, OC, and OS
tuition[0] = C;
C = 1571.25;
tuition[1] = OC;
OC = 3142.50;
tuition[2] = OS;
OS = 4713.75;
return resident;
}
@Override
public double capitalFee() {
double resident = 3;
double[] capitalFee = new double [(int) resident];
capitalFee[0] = C;
C = 0.00;
capitalFee[1] = OC;
OC = 78.00;
capitalFee[2] = OS;
OS = 78.00;
return resident ;
}
@Override
public double accidentIns() {
Ins = 0.00;
return Ins;
}
@Override
public double collegeFee() {
fee = 50.40;
return fee;
}
public double county() {
county total = new county()
//ERROR (wants me to create class or interface for the 1st word county
// have written objects the exact same way in other programs and never
// had an issue.
{
//NOT THE ACTUAL CODE
//total = (index[0] from resident tution +
//index [0] from resident caplitalFee)
//+ (Ins) + (fee);
return total();
}
}
}
完整和兼职类必须使用Array
我将使用Radio Buttons来确定学生的居民身份
您还没有足够的解释让我们知道您的方法应该如何操作,或者它们意味着“类必须使用数组”。但是,由于您要输入“以确定学生的居民身份是什么”,大概您必须告诉某个对象您感兴趣的县,以便它能够提供正确的信息。所以对象状态涉及每个县的信息。这表明数组代表对象状态。还必须有一些方法来输入该信息。 (虽然不一定是通过您列出的四种方法的所有用户都可以访问的接口/对象以及给出他们要报告的县的方法。)您似乎并不清楚自己应该做什么。所以找出来。
您不需要此作业的数组。在你的代码中,你总是返回resident
而不是数组。尝试这样的事情:
public double tuition(String s) {
double acc = 0;
if (s.equals("C")) {
acc = 1571.25;
} else if (s.equals("OC")) {
acc = 3142.50;
} else if (s.equals("OS")) {
acc = 4713.75;
} else {
throw new IllegalArgumentException("Enter C, OC or OS!");
}
return acc;
}
public double capitalFee(String s) {
double acc = 0;
if (s.equals("C")) {
acc = 0.00;
} else if (s.equals("OC") || s.equals("OS")) {
acc = 78.00;
} else {
throw new IllegalArgumentException("Enter C, OC or OS!");
}
return acc;
}
public double accidentIns() {
double ins = 0.00;
return ins;
}
public double collegeFee() {
double fee = 50.40;
return fee;
}
public double county(String a, String b) {
return tuition(a) + capitalFee(b) + accidentIns() + collegeFee();
}
你不能做county total = new county()
。您正在尝试创建方法的对象。你需要一个名为class
的County
和一个构造函数来做到这一点。
这里有一个数组示例:
public double[] tuition() {
double[] tuition = new double[3];
double C = 1571.25;
tuition[0] = C;
double OC = 3142.50;
tuition[1] = OC;
double OS = 4713.75;
tuition[2] = OS;
return tuition;
}
public double[] capitalFee() {
double[] capitalFee = new double[3];
double C = 0.00;
capitalFee[0] = C;
double OC = 78.00;
capitalFee[1] = OC;
double OS = 78.00;
capitalFee[2] = OS;
return capitalFee;
}
public double accidentIns() {
double ins = 0.00;
return ins;
}
public double collegeFee() {
double fee = 50.40;
return fee;
}
public double county(String s) {
double result = 0;
double[] tuition = tuition();
double[] capitalFee = capitalFee();
if (s.equals("C")) {
result = tuition[0] + capitalFee[0] + accidentIns() + collegeFee();
} else if (s.equals("OC")) {
result = tuition[1] + capitalFee[1] + accidentIns() + collegeFee();
} else if (s.equals("OS")) {
result = tuition[2] + capitalFee[2] + accidentIns() + collegeFee();
} else {
throw new IllegalArgumentException("Enter C, OC or OS!");
}
return result;
}