Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ILNAR_93
Android
234 / 234 / 25
Регистрация: 19.01.2013
Сообщений: 1,784
Записей в блоге: 3
#1

Как клонировать класс - Программирование Android

18.07.2017, 16:25. Просмотров 205. Ответов 1
Метки нет (Все метки)

Имеется класс

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public class ClassA implement Cloneable{
public ClassH h;
public ClassN n;
 
public Object clone() throws CloneNotSupportedException {
    return super.clone();
}
}
 
 
public static class ClassN {
 //bla bla этот класс статический
}

Пробую клонировать методом clone но нечего не клонируется.. Изменяя "клон" изменяется и оригинал..

Подскажите пожалуйста как реализовать клонирование в моем случае?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.07.2017, 16:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как клонировать класс (Программирование Android):

Как использовать класс Cashemanager? - Программирование Android
для чего применяется\ класс Cashemanager как при помощи его методов сохранить значение в память или получить значение из памяти??

Как наследовать класс activity - Программирование Android
Написал класс activity1 в котором программно создан layout1. Как использовать мой класс в новом создаваемом приложении? какой нужен...

Как использовать класс Dictionary? - Программирование Android
доброго времени суток форумчане! Пожалуйста помогите!!! Как использовать класс Dictionary(),,,обяснит пример показать((((

Как объявить статический класс? - Программирование Android
В Android Studio заметил интересную вещь, есть некий класс (AlertDialog.Builder), объявлен как static, но в то же время можно создавать его...

Как изменить дефолтный класс в eclipse? - Программирование Android
Вот есть, например, Log.class, с помощью которого мы показываем логи приложения. Как можно изменить этот класс?

Класс Date, как правильно задать дату? - Программирование Android
public class MainActivity extends ActionBarActivity { TextView Text; @Override protected void onCreate(Bundle...

1
shavuz
114 / 120 / 23
Регистрация: 29.01.2014
Сообщений: 596
19.07.2017, 11:34 #2
Ничего не понятно из вашего кода, просто клонабл класс
вот так клонируют:
Java
1
2
3
4
5
6
7
8
9
10
        try
        {
            Account a1 = new Account("Test", 1);
            Log.i(LOG_TAG, a1.toString());
            Account a2 = (Account) a1.clone();
            Log.i(LOG_TAG, "clone: " + a2.toString());
        } catch (CloneNotSupportedException e)
        {
            e.printStackTrace();
        }
а это клас клонабл:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class Account implements Cloneable
{
 
    private String mName;
    private int mId;
 
    Account(String name, int id)
    {
        mName = name;
        mId = id;
    }
 
    @Override
    public String toString()
    {
        return "name: " + mName + " id: " + mId;
    }
 
    @Override
    protected Object clone() throws CloneNotSupportedException
    {
        return super.clone();
    }
}

Вообще , смысла особо нет в использовании клонабл, можно самому написать функцию клонирования класса и пользоваться ей.
Как то так:
Java
1
2
3
4
public Account getClone()
    {
        return new Account(mName, mId);
    }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2017, 11:34
Привет! Вот еще темы с ответами:

Как передать ссылку по клику в другой класс? - Программирование Android
как передать ссылку по клику в другой класс есть класс парсера вот часть кода protected InputStream getInputStream() { ...

Как можно вызывать один класс в разных activity? - Программирование Android
Всем привет! Пишу плеер типа ютюба и нужно, чтобы один класс вызывался в нескольких активти. я думаю нет смысла писать код плеера в каждой...

Как организовать класс для работы с несколькими таблицами - Программирование Android
private class DbOpenHelper extends SQLiteOpenHelper{ public DbOpenHelper(Context context, final String DB_NAME,...

Есть класс унаследованный от View - как туда передать данные? - Программирование Android
getIntent() не работает.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru