Java中的类和对象问题

Java中的类和对象问题,java,class,object,Java,Class,Object,我有个问题。虽然我确实理解代码返回“Nothing”和24.0的原因,但我不太明白为什么会得到“Nothing”24.0和9.0。有人能更好地解释一下这个问题吗?谢谢,这是代码 class Object { int w; int h; int d; void test() { System.out.print("araferi ");} double volum() {return w*h*d;} void volum(double x) { S

我有个问题。虽然我确实理解代码返回“Nothing”和24.0的原因,但我不太明白为什么会得到“Nothing”24.0和9.0。有人能更好地解释一下这个问题吗?谢谢,这是代码

class Object {

    int w; int h; int d;

    void test() { System.out.print("araferi ");}

    double volum() {return w*h*d;}

    void volum(double x) {

    System.out.print(" "+ --x);}

 }


 public class Test {

    public static void main (String[] args){

       Object ob1=new Object();

       ob1.w=2;

       ob1.h=3;

       ob1.d=4;

       ob1.test();

       ob1.volum(10);

       System.out.print(" "+ob1.volum());
    }

 }

9.0
输出来自此行:

ob1.volum(10);
它接收
10
作为参数,但在方法体中它被减少(
--x
),这就是为什么得到
9

注意:不要使用
Object
作为类的名称,因为它会将其更改为其他名称,例如
MyObject

ob1.volume(10)
调用第二个
volume
方法,该方法递减,然后打印其参数。这就是向您展示的功能:

void volum(double x) {
    System.out.print(" "+ --x);}
}

在对传入的值(10)应用预减量后,将打印出值9

将类名
Object
更改为
ObjectTest
,因为Object类是JavaReserved类,他没有专门为值9打印volum方法的结果,因为他的函数没有返回结果,但会打印出值