我是Java的初学者。我继承了一个学生班,即其他班级Datataking
的学生。两者都在单独的文件中。我创建了Datataking
类的对象并尝试通过对象访问takeData
方法,但它给出了语法错误。语法错误是
StdData.takeData();
。如何解决?
代码低于两个类。
Datataking
上课:
import java.util.Scanner;
public class Datataking {
protected String FirstName, LastName, FatherName ;
protected Integer Id,Day,Month,Year;
void takeData()
{
Scanner Input=new Scanner(System.in);
System.out.print("Please Enter Id = ");
Id= Input.nextInt();
System.out.println("Please Enter First Name = ");
FirstName = Input.nextLine();
System.out.println("Please Enter Last Name = ");
LastName = Input.nextLine();
System.out.println("Please Enter Father Name = ");
FatherName = Input.nextLine();
System.out.println("Please Enter Date Of Birth ");
System.out.print("Day = ");
Day= Input.nextInt();
System.out.println();
System.out.print("Month = ");
Month= Input.nextInt();
System.out.println("Year = ");
Year = Input.nextInt();
}
/*###########################################*/
void printData()
{
System.out.println("First Name = " + FirstName);
System.out.println("Last Name = " + LastName);
System.out.println("Father Name = " + FatherName);
System.out.println("Date Of Birth = " + Day + "/" + Month + "/" + Year);
}
}
Student
上课:
import java.util.Scanner;
public class Student extends Datataking {
protected int Fee,ClassOfStudent;
Datataking StdData=new Datataking();
StdData.takeData();
}
答案 0 :(得分:0)
您需要在某个方法体中调用takeData()
,而不是在类中。
答案 1 :(得分:0)
创建类时,可以定义变量和方法。你不能自己发表言论。陈述必须在方法内:
import java.util.Scanner;
public class Student extends Datataking {
//variable declarations
protected int Fee,ClassOfStudent;
Datataking StdData=new Datataking();
//method declarations
//you have none
//ILLEGAL (this is a statement)
StdData.takeData();
}