【发布时间】:2015-11-03 08:02:42
【问题描述】:
我被分配了主要的代码来做子类。 但我被困在这些编码中,如下所示:
z.setName(z.obj1);
z.setID(z.obj2);
********** 应该是插入输入的方式。 **************
========== 下面的子类是我自己写的==========
主要编码如下:
public static void main(String[] args) {
StudReg z = new StudReg();
z.setName(z.obj1);
z.setID(z.obj2);
System.out.println(z.getName());
System.out.println(z.getID());
System.out.println(z.getJava());
System.out.println(z.getDatabase());
StuComputing obj3,obj4;
obj4 = new StuComputing();
obj4.setStudReg(z);
System.out.println(obj4.GPA().getGPA());
}
我完成的子类(StudReg)如下:
public class StudReg {
//Data Member
String Name;
String ID;
double Java,Database;
//Constructor
public StudReg(){};
public StudReg(String a,String b){
Name = a;
ID = b;
};
//Name
public void setName(String n){
Name = n;
}
public String getName() {
return Name;
}
//Id
public void setID (String i){
ID = i;
}
public String getID (){
return ID;
}
//Java
public void setJava (double j){
Java = j;
}
public double getJava (){
return Java;
}
//Database
public void setDatabase (double d){
Database = d;
}
public double getDatabase (){
return Database;
}
//FUNCTION
public StudReg (StudReg gg){
double aa,bb;
//refer to data from MAIN
aa = this.getJava();
bb = this.getDatabase();
}
另一个子类 - StuCompute:
public class StuComputing {
//DATA MEMBER
public StudReg ss;
double GPA;
//CONSTRUCTOR
public StuComputing (){};
public StuComputing (double a1){
GPA = a1;
};
//StudReg
public void setStudReg (StudReg st){
ss = st;
}
public StudReg getStudReg(){
return ss;
}
//GPA
public void setGPA(double g){
GPA = g;
}
public double getGPA(){
return GPA;
}
除了回答我的问题,你们能举一个简单的例子吗? 所以,我很容易理解它>
谢谢
【问题讨论】:
-
你的问题很可能,因为你没有真正描述它,你的类
StudReg既没有一个名为obj1的变量,也没有一个变量obj2 -
我被要求做子类编码以支持主类编码。但我做不到。我尝试了像 public StudReg obj1 (){ StudReg st = new StudReg(); 这样的编码st.setName("xxxx"); st.setID("Dg52");返回圣; } 但我做不到。
-
这个主类有意义吗?为什么在 StudReg 中有一个公共字段只是为了调用同一对象上的设置器以在同一对象的另一个字段中设置相同的值...我很困惑... obj1 和 obj2 是默认值吗?那么它们不应该是静态的吗?
-
是的,主要课程作品。我试图把 public StudReg obj1 (){ StudReg st = new StudReg(); st.setName("柴"); st.setID("D2014");返回圣; } 但发生了另一个错误。我不应该对主要编码进行任何更改。那么,我应该在 StudReg 中进行哪些更改?