Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:03 06.07.25 
Компютри и Интернет
   >> Програмисти
*Кратък преглед

Страници по тази тема: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | (покажи всички)
Тема Java-та е тъп боклукнови  
Автор Pekoнcтpykтop (дарвинист)
Публикувано20.10.10 11:25



class A {}
class B extends A {}

class program {

void main() {
A a = new A();
B b = a; // error: incompatible types
b = (B)a; // БУМ
}
}

Аналогичното в C++ мисля няма нужда да ви го разписвам и да ви казвам, че там проблеми няма.



Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор wqw (АзСъмЖив)
Публикувано20.10.10 11:38



С кой C++ компилатор няма проблеми?

При мене на B *b = a дава:

error C2440: 'initializing' : cannot convert from 'class A *' to 'class B *'

Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast




Тема Re: Java-та е тъп боклукнови [re: wqw]  
Автор Pekoнcтpykтop (дарвинист)
Публикувано20.10.10 11:41



Три вида кастове са ти дали. Джавешкия каст гърми директно.



Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор Cин Mapмoт (в целофан)
Публикувано20.10.10 11:48



Бе в 11:30 е редно да е по-изтрезнял човек





Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор wqw (АзСъмЖив)
Публикувано20.10.10 12:00



Ама ти верно ли не се сещаш, че за upcast-ване трябва да е обратно, т.е. A *a = b

Това във ООП принципно.



Тема Re: Java-та е тъп боклукнови [re: wqw]  
Автор Pekoнcтpykтop (дарвинист)
Публикувано20.10.10 12:09



Ъпкеста е имплицитен, ясен и не ме интересува. Говорим за даункест в случая. Изобщо, възможен ли по някъв начин в жавата?



Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор Гypy (bangbus driver)
Публикувано20.10.10 12:43



В С# ъпкеста е лесен, понеже компилатора знае по време на компилиране. За даункаст не е съвсем ясно до рънтайм и обикновено се проверява с is и се кества с as.

Няма ли нещо подобно в Джава?

http://stackoverflow.com/questions/1524197/downcast-and-upcast/1524226#1524226

--
One day it will make sense.


Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор Гypy (bangbus driver)
Публикувано20.10.10 12:49



instanceof ?

http://forum.codecall.net/java-tutorials/20719-upcasting-downcasting.html

--
One day it will make sense.


Тема Re: Java-та е тъп боклукнови [re: Pekoнcтpykтop]  
Автор cristal_reaver (старо куче)
Публикувано20.10.10 13:02



Напълно вярно си е логически...
Ако искаш пробвай
A a = new B();
B b = a;

би трябавло да работи...ако не знаеш какво е а правиш проверка с инстансъф.



Тема Re: Java-та е тъп боклукнови [re: Гypy]  
Автор Pekoнcтpykтop (дарвинист)
Публикувано20.10.10 13:18



"Note, that casting can't always be done in both ways. If you are creating a Mammal, by calling "new Mammal()", you a creating a Object that is a Mammal, but it cannot be downcasted to Dog or Cat, because it's neither of them."

Яко. Значи не може.

От тук произтичат някои интересни въпроси към джавистите, свързани с шаблонни задачи и повседневни таскове. Ама сега ше се мъча да измисля няква глупост дет да свърши работа, пък после ше го разискваме.




Страници по тази тема: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | (покажи всички)
*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.