Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 5

Почему получается использовать методы одного класса в другом, хотя классы не связаны наследованием

16.07.2015, 12:11. Показов 2045. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день

Когда читала про наследование классов уяснила для себя - оно нужно в том числе, чтобы классы могли "заимстовать" методы и переменные своих супер- и суб- классов.

Сейчас написала два маленьких класса, лежат в одной папке, не наследуют. Они спокойно вызывают методы друг друга. Почему?

Скрин из НетБинса во вложении внизу поста.
Миниатюры
Почему получается использовать методы одного класса в другом, хотя классы не связаны наследованием  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.07.2015, 12:11
Ответы с готовыми решениями:

Использовать метод одного класса в другом
Добрый день, подскажите, как решить проблему. Имеются класс Cat, класс Human, класс House. Необходимо реализовать возможность проверки...

Как использовать переменную из одного класса в другом?
У меня есть два класса. Class A к примеру Self.entry = блаблабла Self.name = self.entry.get() Class B Здесь в методе хочу...

Можно ли использовать объекты одного класса в другом?
И если можно то как? Например если определить это так(предположим что есть два класса - employee и date) class employee { ...

8
 Аватар для reisal78
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,925
16.07.2015, 12:49
BabSteps, наводящий вопрос: а где у вас наследование то тут? =)
0
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 5
16.07.2015, 12:54  [ТС]
reisal78, вот и я об этом!

Наследования нет! Идинственное, что связывает два класса - они лежит в одной паке.

Почему тогда один класс может использовать методы другого класса?

Быть может я неправильно понимаю концепты явы, но разве один класс может использовать методы и поля другого (елси только мы ему это не "разрешим", сделав наследование)?
0
 Аватар для Zazy
47 / 47 / 23
Регистрация: 14.04.2013
Сообщений: 188
16.07.2015, 13:17
BabSteps, Вы создали объект класс MyFrame a и вызываете метод класса MyFrame через этот объект.
Представьте что чертеж/схема магнитофона это класс, у этого класса есть метод сделать громче/тише,
магнитофон это уже объект этого класса его можно установить дома, в машине(в других классах, создать ебъект) и регулировать громкость(использовать методы класса, манипулировать объектом).
Про наследование, вы хотите сделать новую модель своего магнитофона добавить возможность сулашть музыку с USB, писать чертеж/схему с нуля глупо и тут вам приходит в голову мысль взять за основу схему старой модели и добавить в неё улучшения.
Как-то так.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.07.2015, 13:28
BabSteps, я вам больше скажу! Совершенно магическим образом если вы создадите у себя в классе объект ...ну скажем Аррайлист, которого ВООБЩЕ не будет в вашей папке и вызовете его метод, то он выполнится!)))
Если серьезно, вам выше уже намекнули, что вы не совсем верно понимаете ситуацию. Если вам удалось создать объект какого то класса, то вы совершенно свободно можете вызывать его паблик методы, именно так и работает взаимодействие классов.

Вы попробуйте вызвать нестатический метод не создавая объекта! А вот при наследовании это можно сделать.

Добавлено через 1 минуту
Цитата Сообщение от BabSteps Посмотреть сообщение
Быть может я неправильно понимаю концепты явы
боюсь что так
0
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 5
16.07.2015, 13:33  [ТС]
Zazy, начинаю понимать. Хороший пример.

Если вернуться к коду - будь там Наследование между классами, то я могла бы вызывать в Классе Solution методы из MyFrame, не создавая объект MyFrame?

Наверное меня запутал мэйн-метод (только начала его использовать), а там всегда создаются объекты и из них вызываются методы.

Cпасибо большое за подсказку!
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.07.2015, 13:45
Цитата Сообщение от BabSteps Посмотреть сообщение
Если вернуться к коду - будь там Наследование между классами, то я могла бы вызывать в Классе Solution методы из MyFrame, не создавая объект MyFrame?
Именно! Правда объект самого солюшн придется создать для обращения. Для статический методов даже объект не нужен
0
0 / 0 / 0
Регистрация: 16.07.2015
Сообщений: 5
16.07.2015, 13:49  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
я вам больше скажу! Совершенно магическим образом если вы создадите у себя в классе объект ...ну скажем Аррайлист, которого ВООБЩЕ не будет в вашей папке и вызовете его метод, то он выполнится!)))
Аррэи и другие классы из Библиотеки мы импортируем вверху класса. Поэтому чисто визуально я видела связь (мы импортировали этот класс в наш, значит можем использовать его и его методы) и я не пыталась понять глубже.
Связь между моими классами мне была не ясна. Сейчас уловила. Как я понимаю, лежи классы в разных папках, они бы друг друга не видели и пришлось бы тоже делать import? *сейчас проверю*

Цитата Сообщение от Welemir1 Посмотреть сообщение
боюсь что так
значит читать мне еще и читать
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.07.2015, 13:55
Цитата Сообщение от BabSteps Посмотреть сообщение
Аррэи и другие классы из Библиотеки мы импортируем вверху класса.
Верно, это я неудачно пошутил, прошу прощения
Цитата Сообщение от BabSteps Посмотреть сообщение
Как я понимаю, лежи классы в разных папках, они бы друг друга не видели и пришлось бы тоже делать import?
да, классы из разных пакетов друг друга не "видят", нужен импорт
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.07.2015, 13:55
Помогаю со студенческими работами здесь

Как переменную из одного класса использовать в другом?
Как переменную из одного класса использовать в другом?

Не могу использовать переменную с одного класса в другом!
Проблема следующая. Есть три класса Первый главный public class LaunchUrlIndicator { public static void main(String args) { ...

Использовать переменную события в другом методе одного класса
Есть метод где я подписываюсь на событие private bool IsCameraRestarted(string ip, int port) { bool result =...

Как использовать значение переменной из одного класса в другом?
Есть у меня класс package maps { import flash.display.MovieClip; import flash.events.Event; public class Level_1...

Считать данные с одного класса и использовать их в другом классе
У меня есть два класса в программе - 1. Window Form со всеми контролс и переменными и 2. Асинхронный TCP. Сейчас в TCP можно написать...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru