public class AutoBoxUnBoxDemo { public static void main(String[] args) { // Autoboxing examples Integer intObj = 10; Double doubleObj = 3.14; Character charObj = 'A'; Boolean boolObj = true; System.out.println("Autoboxing examples:"); System.out.println("Integer: " + intObj); System.out.println("Double: " + doubleObj); System.out.println("Character: " + charObj); System.out.println("Boolean: " + boolObj); // Unboxing examples int intValue = intObj; double doubleValue = doubleObj; char charValue = charObj; boolean boolValue = boolObj; System.out.println("\nUnboxing examples:"); System.out.println("int: " + intValue); System.out.println("double: " + doubleValue); System.out.println("char: " + charValue); System.out.println("boolean: " + boolValue); // Demonstrating autoboxing in method calls printObject(50); // autoboxing int to Integer // Demonstrating unboxing in expressions Integer sum = intObj + 5; // unboxing for addition, then autoboxing result System.out.println("\nSum after unboxing and autoboxing: " + sum); } public static void printObject(Object obj) { System.out.println("\nObject passed: " + obj); } }