169 похожих чатов

Ребят всем привет. На работе пишу на ts и в

процессе возник вопрос. Предположим, что у нас есть класс A,от которого унаследованы классы В и С. Класс A содержит методы, a1, a2. Классы B и C содержат методы b1 и c1 соответственно. Как будут выглядеть классы B и C, когда они будут скомпилированы? Правильно ли я понимаю, что они также будут содержать методы a1 и a2, независимо от того, используются они или нет? Если я унаследую класс D с методом d1 от C будет ли он содержать методы a1, a2, c1 и d1 при компиляции? Если это так, то получается, что если мы добавляем методы и поля в базовый класс, то наследуемые классы увеличиваются и использование памяти проекта увеличивается многократно, хотя не все методы базового класса могут быть использованы в дочерних классах, но они содержатся там и занимают память.

8 ответов

24 просмотра

так там же прототипы. прототипы юзают только те методы которые им нужны.

https://learn.javascript.ru/class-inheritance

Artur-Yumaev Автор вопроса

О, спасибо! Совсем недавно в js, поэтому в понимании фундаментальных принципов пока не очень)

это вопрос по javascript. в ts классы те же самые, что в js. ничто никуда не копируется, один и тот же метод доступен у инстансов обоих классов по ссылке https://learn.javascript.ru/class https://learn.javascript.ru/object

Ещё вот, абзац про наследование в твоём случае. А в целом я б и всю страницу прочёл на твоём месте)) https://learn.javascript.ru/es-class

Опередил 🙂

у тебя ссылка устаревшая 😛

Это не я, это все гугол😅

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта