Java – compiled in CMD but error in NetBeans

I have a small java file given below

class abc{
    public static void main(String args[]){
        Object a= 9;
        int b= (int)a;
        System.out.print(b);
    }
}

It has errors when compiling in CMD, but it is incorrect in NetBeans In addition, when I replace '(int) "with' (integer)", it will compile and run normally on CMD and NetBeans

class abc{
    public static void main(String args[]){
        Object a= 9;
        int b= (Integer)a;
        System.out.print(b);
    }
}

What is the reason and how can I solve this problem?

Edit: the error in compiling the first code is:

C:\Users\ANKIT.ANKITSHUBHAM-PC>javac abc.java
    abc.java:4: inconvertible types
    found   : java.lang.Object
    required: int
                            int b= (int)a;
                                        ^
    1 error

Editor: the problem is not casting This is about why when I use '(int)' to convert an object to int, CMD and NetBeans behave differently, but use the same way when using '(integer)'

Solution

What happened here?

Object a= 9;

Yes:

>Int with a value of 9 > it is automatically wrapped in an integer > it is stored in a variable of type object

Now, on the next line, object cannot be converted to int in Java 6 because it is actually an integer, not a primitive type However, it can be converted to integer and then auto- un@R_102_2419 @Ing is responsible for extracting an int

Now to "why work in NetBeans?"

NetBeans uses a different compiler (see here) than command line javac It may behave differently from javac and be more tolerant - perhaps it will automatically unpack integers when it encounters an attempt to convert it to int

In another answer, Java 7 supports automatic unpacking in this case, so the possible reason is that your command line javac is from Java 6 and NetBeans uses the Java 7 compiler (or later)

The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
分享
二维码
< <上一篇
下一篇>>