Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 128

/ вопрос закрыт /

Здравствуйте, уважаемые эксперты! Есть цитата: При выполнении кода в
динамическом контексте
всегда есть объект, с
которым идет работа в
данный момент.
Например, для
динамического метода
это объект, у которого
он был вызван, и так
далее.
А я думал, методы экземпляра статические, если не указать явно(virtual, например)...
Объясните, пожалуйста!

Phantom Вопрос закрыт (ответы не принимаются, мини-форум закрыт)

Вопрос задал: Phantom (статус: Посетитель)
Вопрос отправлен: 12 мая 2012, 09:51
Состояние вопроса: закрыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 21; последнее сообщение — 17 мая 2012, 01:20; участников в обсуждении: 3.

Страницы: [1] [2] [Следующая »]

min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 10:06 [#1]:

Цитата (Phantom):

Например, для динамического метода...

Здесь автор, ИМХО, имел в виду, что именно явно указан тип метода dynamic.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 10:15 [#2]:

P.S. Данную цитату брал с учебника по Java...
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 10:29 [#3]:

Цитата (Phantom):

Данную цитату брал с учебника по Java...

А зачем?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 11:26 [#4]:

просто подвернулась интересная статейка, равнозначная и для Delphi, и для Java. только в конце непонятно: динамическими являются
методы, вызывающийся из объектов(экземпляров классов), а не имя_класса.имя_метода.
как это?
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 11:56 [#5]:

Цитата (Phantom):

методы, вызывающийся из объектов(экземпляров классов), а не имя_класса.имя_метода. как это?

А вот так: имя_класса.имя_метода - вызов классового метода. В классовых методах не используется Self и описываются они так:
T = class(...)
public
  class procedure P(...);
  class function F(...): ...;
end;
 
// вызовы
T.P(...);
X:= T.F(...);
Обычные методы вызываются с указанием экземпляра: имя_переменной.имя_метода(). В эти методы указатель Self передаётся неявно.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
DNK

DNK (статус: Студент), 12 мая 2012, 12:08 [#6]:

В Java все методы объекта динамические, а методы класса - статические.
"Digital Networked Knight"
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 12:33 [#7]:

Разобрался. т.е. обычные методы в java по умолчанию динамические, в Delphi-статические, и в тех, и в этих есть неявный параметр self, ссылающийся на объект, использующийся для вызова метода. Я прав?
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 13:12 [#8]:

Цитата (Phantom):

Разобрался. т.е. обычные методы в java по умолчанию динамические

А хрен его знает, я на Java не работаю.

Цитата (Phantom):

в Delphi-статические

А как же виртуальные, динамические и классовые?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 13:14 [#9]:

я имею ввиду по умолчанию, то есть, если не указывать явно
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 13:42 [#10]:

Цитата (Phantom):

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

Если даже указывать явно, то Self всё равно передаётся.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 14:00 [#11]:

с этим проблем то нет! Имеется ввиду, какой тип обычных методов принят по умолчанию. Например в java–виртуальные, в C++,Дельфи и т.п. - статические.
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 14:13 [#12]:

Ну и чо теперь? Легче стало?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 14:23 [#13]:

более или менее конкретно.
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 14:34 [#14]:

А вот теперь ответь: каким образом и для чего ты будешь применять полученную информацию на практике?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 14:48 [#15]:

а как это можно применить на практике?
Phantom

Phantom (статус: Посетитель), 12 мая 2012, 15:28 [#16]:

до этого прогал на java, и в связи с этим возникли непонятки в Delphi, такие ка виртуальные методы, которые к java вообще неприминимы. вот и захотелось разобраться в этих "дельфийских" тонкостях, чтобы все встало на свои места.
DNK

DNK (статус: Студент), 12 мая 2012, 15:34 [#17]:

Если тебе нужна полемика, гоу ту ирц.
"Digital Networked Knight"
min@y™

min@y™ (статус: Доктор наук), 12 мая 2012, 22:40 [#18]:

Цитата (Phantom):

до этого прогал на java, и в связи с этим возникли непонятки в Delphi, такие ка виртуальные методы, которые к java вообще неприминимы. вот и захотелось разобраться в этих "дельфийских" тонкостях, чтобы все встало на свои места.


ЗАЧЕМ, А?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Phantom

Phantom (статус: Посетитель), 13 мая 2012, 16:11 [#19]:

Потому что у нас в колледже Object Pascal
min@y™

min@y™ (статус: Доктор наук), 13 мая 2012, 22:08 [#20]:

Цитата (Phantom):

Потому что у нас в колледже Object Pascal

Допустим. Но я ж спросил не "почему", а "зачем"!
ОТВЕЧАЙ!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Страницы: [1] [2] [Следующая »]

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:29
Выполнено за 0.02 сек.