Что будет напечатано в результате компиляции и выполнения следующего кода?

public class Test {
    public static void main(String[] args) throws CloneNotSupportedException {
        
        A a1 = new A();
        A a2 = (A) a1.clone();
        
        System.out.println(a1 == a2);
        System.out.println(a1.min == a2.min);
        System.out.println(a1.max == a2.max);
    }
}

class A implements Cloneable {
    Integer min = new Integer(100);
    Integer max = new Integer(1000);
    
    @Override
    protected Object clone() throws CloneNotSupportedException {
        return super.clone();
    }
}
Explanation
x != x.clone() это самое первое требование, описанное в документации клонирования. Переменные 'min' и 'max' == их клонам, т.к. стандартный механизм "поверхностного клонирования" копирует ссылки на объекты.

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback
Keep exploring
Java quizzes
Cosmo
Sign Up Now
or Subscribe for future quizzes