![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
axod |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 17.2.2005 Репутация: нет Всего: нет |
как скопировать класс..... НЕ скопировать указатель а именнт класс
Варриант Class a = new Class(); Class b = a; но это не проканывает. ? |
|||
|
||||
ZAVS |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 25.2.2004 Где: ЕРЕВАН Репутация: нет Всего: 1 |
для скопирования обьектов есть метод clone();
он объявлен в классе Object , от которого все наследуют, но для своих классов ты должен переписать его --------------------
Учись студент доцентом станешь :) |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Для каждого загруженного класса JVM создает экземпляр объекта java.lang.Class. Такой объект существует в единственном экземпляре (для каждого класса) и создается только JVM. А зачем это нужно?
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
axod |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 17.2.2005 Репутация: нет Всего: нет |
Вообще как-нибудь без clone() я так знаю, но так мне не надо.
Просто на создание объекта класса уходит время, ну а просто коопированием будет быстрее. (Скажем прога должна работать очень быстро) Ну если можно вообще такое сделать, если нет то просто придётся для этого свой класс придумывать. |
|||
|
||||
LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Для создания копии объекта и предназначен метод clone(). В простейшем случае это выглядит так:
Посмотри у Брюса Эткеля там у него это хорошо объясняется. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
axod |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 17.2.2005 Репутация: нет Всего: нет |
Вообще кроме clone() нету разве ничего нету другого?
|
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Для начала объясни, почему ты считаешь, что создание объекта - настолько медленная операция что нужно что-то еще.
-------------------- |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
Так копировать надо объект или класс, как указано в топике?
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
Guest |
|
|||
Unregistered |
|
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Это неправильный подход; и в очередной раз я вынужден попросить соблюдать соглашения об именовании в Java. -------------------- |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
И чем это быстрее??? Все равно точно так же создается объект. Кроме того, это ведь и есть, по сути, метод clone. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
axod |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 17.2.2005 Репутация: нет Всего: нет |
Вообще
умоляю НЕ ПЕРЕКИДЫВАЙТЕ ТЕМУ НА ДРУГОЙ ФОРУМ дело в том что ![]() ![]() это мне необходимо под J2ME WTK а там нету метода clone() и время создания ВСЕГО на вес золота |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 24 Всего: 151 |
Мне кажется, что без переопределения clone() все равно не обойтись. Как можно создать копию объекта, не создавая второй объект? Навряд ли это можно как-то ускорить.
Значит, надо его сделать. ![]() -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
kashka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 29.11.2004 Где: Wolfenbuettel, Ge rmany Репутация: 1 Всего: 1 |
Придется тебевсе таки метод clone() самому писать иначе ни как нельзя.
В J2ME нет встроенной возможности скопировать класс, по моему. А что у тебя так много ресурсов требуется и для какого ты телефона пишешь? |
|||
|
||||
axod |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 17.2.2005 Репутация: нет Всего: нет |
тогда скажите плиз по какой схеме работает метод clone()
спасибо |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
-------------------- |
|||
|
||||
kashka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 29.11.2004 Где: Wolfenbuettel, Ge rmany Репутация: 1 Всего: 1 |
Берешь свой класс определяешь в нем метод clone(), в етом методе создаешь новый объект и копируешь все поля старого объекта в новый.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |