为什么不可以缺了static?

类别:软件工程 点击:0 评论:0 推荐:
?  

public class TestSalary

{

public static void main(String[] args)throws IOException

{

System.out.println("Please Enter a number");

InputStreamReader reader=new InputStreamReader(System.in);

BufferedReader input=new BufferedReader(reader);

 

String text=input.readLine();

Integer x=new Integer(text);

int s=x.intValue();

 

System.out.println("The result is "+raiseSalary(s));

 

}

public int raiseSalary(int s) //这里不可以没有static

{

s*=3;

 

return s;

}

}

 

我的理解是:System.out.println("The result is "+raiseSalary(s));

里面的raiseSalary(s)没有用对象来调用?

 

1.如果你的raiseSalary()方法不定义成static的话,你就必须实例话TestSalary类,再通过实例来调用raiseSalary()。

如果你定义成static的话就没有这个问题了。

 

2.在static方法里面需要直接调用的方法或者变量等都应该定义为static.

如果不想定义为static,你应该new TestSalary().raiseSalary(s)

本文地址:http://com.8s8s.com/it/it33276.htm