Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Java / JavaScript


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Java/JavaScript

Выпуск № 349
от 03.04.2007, 08:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 335, Экспертов: 28
В номере:Вопросов: 1, Ответов: 1


Вопрос № 80208: Здравствуйте! Объясните мне пожалуйста классы. До сих пор умудрялся обходится без них но в jave это, как понимаю, очень важно знать, а главное понимать. Вопрос конечно дурацкий и относится не только к языку java. Пока писал вопрос н...

Вопрос № 80.208
Здравствуйте!

Объясните мне пожалуйста классы. До сих пор умудрялся обходится без них но в jave это, как понимаю, очень важно знать, а главное понимать.

Вопрос конечно дурацкий и относится не только к языку java. Пока писал вопрос начал врубаться.
Пожалуйста попробуйте мне растолковать, всё что я не понял или пропустил.

Приложение:

Отправлен: 29.03.2007, 08:27
Вопрос задал: Талипов А Н (статус: 3-ий класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Allex
Здравствуйте, Талипов А Н!

Идеи объектно-ориентированного подхода достаточно просты. Мы часто мыслим в терминах объектов, обладающих некоторыми свойствами и над которыми можно выполнить некоторые операции. Вот, например, лампочка. Свойство - мощность. Операции - включить, выключить. Конкретная лампочка - это объект. А можно выделить класс объектов, обладающих теми же свойствами. Класс задаёт общие свойства объектов и операции над ними. Значения свойств задаются для конкретных объектов.

1. Маленькие программы можно писать и без классов. Объектно-ориентированный подход появился, когда возникла необходимость создавать настолько большие и сложные программы, что процедурный подход потребовал слишком больших усилий. поэтому возникла идея думать о работе программы как о взаимодействии достаточно крупных объектов, временно забывая об их внутреннем устройстве. Тут используется распространенный принцип борьбы со сложностью - разделяй и властвуй. Сначала решим, какие должны быть крупные куски и как они должны ввзаимодействовать. Потом аналогичным образом разберемся с каждым из этих кусков, пока не дойдем до простых, которые можно реализовать не разбивая.

2. Класс определяет, какие данные есть у каждого объекта этого класса. Например, в вашем примере координаты x и y есть у каждого объекта класса Point. Может быть несколько объектов класса Point и у каждого из них будут свои координаты. Функции объекта обычно называют методами. От обычных функций методы отличаются тем, что вызываются не сами по себе, а для некоторого объекта и имеют доступ к данным этого объекта (this).
Инкапсуляция данных позволяет ограничить доступ к ним, чтобы возникало меньше ошибок ошибочного изменения данных. Можно считать, что данные принадлежат объекту и только объект имеет право их изменять. Все остальные имеют право только вызывать методы объекта.

3. Ссылку можно сделать на объект класса (p1 и p2) и вызывать мытоды объекта. Вызвать ссылку нельзя - это не функция, а переменная, указывающая на объект. Экземпляр класса (объект) с нужными параметрами создаётся при помощи конструктора (p3).

Я, конечно, постарался кратко все описать и ответить на вопросы, но лучше, всё-таки прочитать какую-нибудь толковую книжку.

Приложение:

Ответ отправил: Allex (статус: 5-ый класс)
Ответ отправлен: 29.03.2007, 10:04
Оценка за ответ: 5
Комментарий оценки:
Благодарю.Постепенно врубаюсь.


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: support@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.46 от 18.03.2007
Яндекс Rambler's Top100

В избранное