[英]Java cascade of errors in object code when compiling
我正在尝试编译Java程序,但是却收到一连串的错误提示
包含任务对象的方法/构造函数的文件中的“预期错误”,“类型非法开始”,“预期类,接口或枚举”。
根据我的在线收集,这些错误是在类或方法等之外进行语句时发生的,但是我还没有做任何事情。
之前的代码运行良好,我对Task.java所做的只是添加一些基本的get和set方法并更改某些变量的名称。
更重要的是,我无法查看cmd中的所有错误。 由于某种原因,我只能向上滚动到现在,所以我什至无法尝试指出源。
public class Task
{
// private member variables
private int CriticalTime;
private int TaskTime;
private int id;
private int numDependency;
private int day;
private boolean generic;
private boolean isComplete;
private boolean isCritical;
private boolean ignore;
private boolean dummy;
private boolean isScheduled;
private int[] dependency;
public Task()
{
CriticalTime = 0;
TaskTime = 0;
id = 0;
numDependency = 0;
day = 0;
generic = false;
isComplete = false;
isCritical = false;
ignore = false;
dummy = false;
isScheduled = false;
int[] dependency;
return;
}
public Task(int x, int y, int ID, int NumDependency, int Day, boolean Generic, boolean IsComplete, boolean IsCritical, boolean Ignore, boolean Dummy, boolean IsScheduled, int[] Dependency)
{
CriticalTime = x;
TaskTime = y;
id = ID;
numDependency = NumDependency;
day = Day;
generic = Generic;
isComplete = IsComplete;
isCritical = IsCritical;
ignore = Ignore;
dummy = Dummy;
isScheduled = IsScheduled;
this.dependency = Dependency;
return;
}
public void setTask(int x, int y, int ID, int NumDependency, int Day, boolean Generic, boolean IsComplete, boolean IsCritical, boolean Ignore, boolean Dummy boolean IsScheduled, int[] Dependency)
{
CriticalTime = x;
TaskTime = y;
id = ID;
numDependency = NumDependency;
day = Day;
generic = Generic;
isComplete = IsComplete;
isCritical = IsCritical;
ignore = Ignore;
dummy = Dummy;
isScheduled = IsScheduled;
this.dependency = Dependency;
}
public void setTask(int[] Dependency)
{
CriticalTime = 0;
day = 0;
generic = false;
isComplete = false;
isCritical = false;
ignore = false;
dummy = false;
isScheduled = false;
this.dependency = Dependency;
}
public int getCriticalTime()
{
return CriticalTime;
}
public int getTaskTime()
{
return TaskTime;
}
public int getTaskID()
{
return id;
}
public int getNumDependency()
{
return numDependency;
}
public boolean getGenericBoolean()
{
return generic;
}
public boolean getIsCompleteBoolean()
{
return isComplete;
}
public boolean getIsCriticalBoolean()
{
return isCritical;
}
public boolean getIgnoreBoolean()
{
return ignore;
}
public boolean getIsScheduled()
{
return isScheduled;
}
public boolean getDummy()
{
return dummy;
}
public int getDay()
{
return day;
}
public int getDependency(int x)
{
return dependency[x];
}
public void setGenericBoolean(boolean Generic)
{
generic = Generic;
}
public void setIsCompleteBoolean(boolean IsComplete)
{
isComplete = IsComplete;
}
public void setIsCriticalBoolean(boolean IsCritical)
{
isCritical = IsCritical;
}
public void setIgnoreBoolean(boolean Ignore)
{
ignore = Ignore;
}
public void setIsScheduled(boolean IsScheduled)
{
isScheduled = IsScheduled;
}
public void setCriticalTime(int A)
{
CriticalTime = A;
}
public void setCriticalTime(int A, int B)
{
CriticalTime = A + B;
}
public void setDependency(int i, int A)
{
dependency[i]=A;
}
public void setTaskTime(int A)
{
TaskTime = A;
}
public void setTaskID(int A)
{
id = A;
}
public void setNumDep(int A)
{
numDependency = A;
}
public void setDummy(boolean Dummy)
{
dummy = Dummy;
}
public void setDay(int i)
{
day = i;
}
}
抱歉,如果格式不正确或有不必要的方法等,我非常新手。
不是直接的答案,而是解决问题的指南:只需注释掉该代码的95%。
换句话说:您尝试编译的代码越多,一个简单的语法错误就越容易变成一条错误消息,而该错误消息并未直接指向正确的位置。
从而:
除此之外:阅读干净的代码 。 例如,该实践主张一种方法最多具有3个参数。 令人惊讶的是:如果缺少3个参数中的2个,则很容易发现逗号,而对于12个参数中的11个,则很容易发现。
认真地说:您的“语法”问题只是实际问题的征兆 :这就是您如何设计类及其方法的方式。
还有一个,
缺少boolean Dummy boolean IsScheduled,
的setTask
。 它应该是
public void setTask(int x, int y, int ID, int NumDependency,
int Day, boolean Generic, boolean IsComplete, boolean IsCritical,
boolean Ignore, boolean Dummy, boolean IsScheduled, int[] Dependency)
{
...
}
如果您使用IDE进行编程,则很容易发现这种错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.