Language: Java
OS: Windows
IDE: NetBeans 8.0.2
我是Java的新手,我正在尝试使用在线资源自学,所以我为新问题道歉,并提前感谢您的帮助。
我的目标:创建一个类。为变量赋值。创建一个功能。创建一个对象。调用函数显示变量。
问题:"错误:找不到符号test1.printResult(result);"
package usingoperators;
class MathDemo
{
// create integer variable and initiate it to 3
int result = 1 + 2; //result is now 3
// create printResult function with result parameter
void printResult(int result) // result is passed to printResult function
{
System.out.println(result); // prints result
}
}
public class UsingOperators
{
public static void main(String[] args)
{
MathDemo test1 = new MathDemo(); // creates test1 object
test1.printResult(result); // calls the printResult function to print result
}
}
我的猜测是我没有通过"结果" to printResult();正确。
答案 0 :(得分:3)
主方法中没有变量result
,因此Java不知道要传递给printResult()
的内容。您应该在main方法中本地定义一个result
变量,这样您就可以将它传递给方法(而不是在OOP中调用它,而不是函数)。
我还会实现add()
方法,因此您可以传递两个数字并返回总和。
做数学的课程:
package usingoperators;
public class MathDemo
{
// Calculate a + b and return result
public int add(int a, int b) {
return a + b;
}
// create printResult function with result parameter
public void printResult(int result) // result is passed to printResult function
{
System.out.println(result); // prints result
}
}
使用MathDemo的类:
package usingoperators;
public class UsingOperators
{
public static void main(String[] args)
{
MathDemo test1 = new MathDemo(); // creates test1 object
int result = test1.add(1, 2); // Calculate 1 + 2 and store result in variable
test1.printResult(result); // pass result to method to print it
}
}
答案 1 :(得分:1)
result
课程中没有UsingOperators
个变量。您必须先创建此变量,然后再将其传递给MathDemo
printResult(...)
方法。例如:
public class UsingOperators{
public static void main(String[] args){
int reuslt = 1;
MathDemo test1 = new MathDemo(); // creates test1 object
test1.printResult(result); // calls the printResult function to print result
}
}
答案 2 :(得分:1)
您将函数的结果作为参数给出,但在main方法中未知结果。 试试这个。
public static void main(String[] args)
{
MathDemo test1 = new MathDemo();
int result = 1 + 2;
test1.printResult(result);
}