package my.cloneable;
public class SomeClass {
public SomeClass(String name) {
this.name = name;
}
String name;
}
class User implements Cloneable {
private String name;
private int age;
private SomeClass custom;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public User clone() throws CloneNotSupportedException {
return (User)super.clone();
}
public SomeClass getCustom() {
return custom;
}
public void setCustom(SomeClass custom) {
this.custom = custom;
}
}
public class App {
public static void main(String[] args) {
User user = new User();
user.setName("Иванов");
user.setAge(25);
user.setCustom(new SomeClass("Иван"));
System.out.println("Данные до клонирования: " +
user.getName() + " " + user.getCustom().name + " - " + user.getAge() + "лет");
User clone;
try {
clone = user.clone();
System.out.println("Клон : " +
clone.getName() + " " + user.getCustom().name + " - " + clone.getAge() + "лет");
clone.setName("Петров");
clone.setAge(30);
clone.setCustom(new SomeClass("Степан"));
System.out.println("Клон после изменения данные: " +
clone.getName() + " " + clone.getCustom().name + " - " + clone.getAge() + "лет");
} catch (CloneNotSupportedException e) {
System.out.println("Объект не может быть клонированным.");
}
System.out.println("Оригинал, после манипуляций с клоном: " +
user.getName() + " " + user.getCustom().name + " - " + user.getAge() + "лет");
}
}
/* результат:
Данные до клонирования: Иванов Иван - 25лет
Клон : Иванов Иван - 25лет
Клон после изменения данные: Петров Степан - 30лет
Оригинал, после манипуляций с клоном: Иванов Иван - 25лет
*/
sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get --purge remove sublime-text*
sudo apt-get install sublime-text
для того что бы стоял по умолчанию почитайте что то...к примеру www.mintlinux.ru/forum/thread3592.html ,но это что то тривиальное, вполне себе гуглится, поэтому дерзайте;)