给定一个名为`Calculator`的Java类,其中包含一个静态方法`add(int a, int b)`用于计算两个整数的和,以及一个实例方法`subtract(int a, int b)`用于计算两个整数的差。如果存在一个`Calculator`类的对象`myCalc`,并且尝试直接使用`myCalc`调用`add`方法,并尝试使用类名`Calculator`调用`subtract`方法,会发生什么?

答案解析

静态方法属于类,应该通过类名调用;实例方法属于对象,应该通过对象名调用。选项A错误,因为静态方法`add`应该通过`Calculator.add(5,3)`调用,而不是`myCalc.add(5,3)`。选项B错误,因为`Calculator.subtract(5, 3)`是错误的调用方式,实例方法必须通过对象来调用。选项C正确,因为`myCalc` 是 `Calculator` 类的实例,所以它不能直接调用静态方法,但是`Calculator`不能直接调用实例方法,需要一个具体的实例。选项D错误,因为根据分析,选项C才是正确的。
正确答案:C
随机推荐
开始刷题