|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Добрый день. в букварях прописаны два способа использовать методы из сторонних классов 1. сделать метод статическим и вызывать без сборки объекта: ClassName.statMethod("hello"); 2. собрать объект из класса ClassGetSomeThing getAnyThing = new ClassGetSomeThing getAnyThing(); и потом все равно использовать методы этого класса тут же, "не отходя от кассы" в букварях нет точных обоснований в каких случаях использовать тот или другой способ Вопрос: - какие принципы выбора того или другого способа использовать методы из сторонних самописных (не из состава java 8) классов? Заранее спасибо за ответы по ЗАДАННЫМ вопросам ... |
|||
:
Нравится:
Не нравится:
|
|||
21.08.2021, 20:52 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Pcrepair, Больше новых топиков не заводи. Закончи со старыми. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.08.2021, 21:51 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Есть понятие "состояние" объекта. И если твой метод будет зависеть от этого состояни (модифицировать, накапливать) то его надо делать методом и создав экземпляр выполнить операцию для данного экземпляра. Пример. Код: java 1. 2. 3.
Для статического метода обычно никаких состояний не предполагается. Как например чтобы посчитать синус 30 градусов - тебе не нужен никакой объект. Ты просто считаешь синус вне любых контекстов. В этом случае обрамляющий объект выступает просто как пакет. Или как пространство имен которое просто что-то объедияет. В данном случае слово Math - просто сделано для красоты. Ибо иначе в java нельзя объявить функцию. Код: java 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.08.2021, 22:00 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Pcrepair Заранее спасибо за ответы по ЗАДАННЫМ вопросам Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
А после прочтения вашего текста возникает законный вопрос: задлянафига в нём динамические загрузка классов и создание экземпляров класса? А потом следующий: а если динамика важна, то задлянафига обсуждать разницу статически и нестатических методов, если от способа загрузки класса и создания его экземпляров ничего не зависит? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2021, 09:07 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Pcrepair , здесь вопрос не в том что лучше или хуже. Просто есть ситуации: а) когда во во время компиляции классы не доступны, а во время запуска они есть б) название класса не известно на момент компиляции В таких случаях ты не можешь создавать класс через new и нужно прибегать к динамической загрузке (не обязательно через Class.forName()). Примеры: 1. Некоторые приложения поддерживают разные СУБД и пользователь решает на момент запуска с какой СУБД он работает и какой драйвер подложить. 2. Если ты пишешь библиотеку которая работает с несколькими провайдерами. Например, SLF4J может использовать разную реализацию: logback, log4j, etc. 3. Пишем плагинную архитектуру. Соотвественно классы этого плагина нужно загружать динамически и мы не знаем их заранее. 4. В Java даже есть спецификация SPI (Service Provider Interfaces) как раз для случаев когда реализацию какого-либо интерфейса можно было бы определять на момент запуска. Например, Security Provider типа BouncyCastle так подключается, SAX реализации для обработки XML, etc. Имей в виду что статически в таких случаях ты работаешь с интерфейсом , он тебе доступен всегда. А динамически загружаешь именно реализацию. В Maven для таких библиотек есть специальный scope=runtime. Такая библиотека попадет в итоговый артефакт, но не будет доступна на этапе компиляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2021, 09:28 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Господа, вы много пишите. Неужели автор 10 лет программируя на дельфи не знает данный вопрос. Не принижайте ЯП дельфи. Это не пыха, бейсик и 1С ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2021, 10:31 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
"Спасибо, ваше мнение очень важно для нас". ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2021, 11:26 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, Да!)) Дельфи в обиду не дам. Ты же написаль "в вопросе нет даже четверти ответа)"…! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2021, 11:52 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Дельфи-то каким боком к кривизне вопроса по Java? P.S. "Ты своё плети, а моего - не путай". ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 05:56 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, Не обязательно дельфи. Важно что чел с опытом в 10лет. Ну и не обслуживает свой топик. Мы тут вам не SO)) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 10:33 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, прокачиваешь свой акк? Твоих постов всегда больше. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 10:36 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
mayton, Мы разговариваем о фактах. А ты как всегда... Факты что ТС покинул топик. И факт что вопрос странный для опытного прогера. Попробуй говорить хоть иногда о фактах. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 10:44 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
mayton, Java 8 и далее. Использовать глобальные переменные или локальные? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 10:45 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Не надо придумывать. Ничего ТС не покинул. Он просто 2 дня думает. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 10:55 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
mayton Не надо придумывать. Ничего ТС не покинул. Он просто 2 дня думает. Причина по словам мембера mayton имеющего доп инфу - обдумывает. ))))))) : LOL ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 11:07 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
mayton, На вопрос выше ответь, а я пошел "обдумывать". ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 11:10 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Что-то мне не интересно стало тебе отвечать. Вроде чувствую себя как Паниковский и Балаганов. Надеюсь понимаешь литературную отсылку. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 11:25 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
mayton, Не понравилось? Мне тоже твой пост на ровном месте. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 11:32 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
петро, не волнуйси ты так. Я внимательно наблюдаю за всем тем тролло что ты тут разводишь и да: Заранее спасибо!!! за ответы по ЗАДАННЫМ вопросам ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 13:57 |
|
JAVA 8 и далее. Самописный класс. вызывать статические методы или объект
|
|||
---|---|---|---|
#18+
Pcrepair петро, не волнуйси ты так. Я внимательно наблюдаю за всем тем тролло что ты тут разводишь и да: Заранее спасибо!!! за ответы по ЗАДАННЫМ вопросам От твоего поста вопрос умнее то не стал). Его новички задают. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.08.2021, 14:10 |
|
|
start [/forum/topic.php?fid=59&tid=2120366]: |
0ms |
get settings: |
25ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
404ms |
get tp. blocked users: |
1ms |
others: | 380ms |
total: | 883ms |
0 / 0 |