Go to windows, preferences
type error,
select Errors/warnings,
type boxing and
then select Error, warning or ignore (By default its ignore).
Example - If you select warning, then eclipse will warn you whenever any Autoxing or unboxing is done.>
Example 1 - Autoboxing Example 1 >
You may write such code where we won’t rely on Java compiler to perform Autoxing -
/** Copyright (c), AnkitMittal JavaMadeSoEasy.com */
public class Autoboxing{
public static void main(String[] args) {
int i = 12;
Integer iObject = Integer.valueOf(i); // This is Autoboxing
}
}
|
In the above program by using Integer.valueOf(i) we can ensure that one Integer object is formed.
Note : You may not rely on Integer.valueOf(i) method every time to count number of objects formed because Java caches Integer objects formed from primitive int values between values -128 to 127. Hence, Integer.valueOf method returns cached object(if any) for primitive int values between values -128 to 127. Read this post for more details.
Example 2 - Unboxing Example 1 >
You may write such code where we won’t rely on Java compiler to perform unboxing -
/** Copyright (c), AnkitMittal JavaMadeSoEasy.com */
public class Unboxing{
public static void main(String[] args) {
Integer iObject = Integer.valueOf(12); // equivalent to > Integer iObject = 12;
int i = iObject.intValue(); // This is Unboxing
}
}
|
In the above program by using intValue() we can ensure that one Integer object is converted into primitive data type.
Example - If you select error, then eclipse will show error whenever any Autoxing or unboxing is done(It won’t be the compilation error) >
You can see red mark when autoxing is done.
Possible advantages of changing Autoboxing and unboxing setting in eclipse >
- Keep track of number of objects formed in program - It can help developer in keeping easy track of number of primitives converted into wrapper objects, accordingly developer may manage heap or enforce early garbage collection.
- Keep track of number of objects converted into primitives - Developer can keep track of such conversion easily, avoid them if possible and optimize performance.