2011-01-19 3 views

ответ

1

В моем самом педантичном настроении, я бы написать:

Y является методом экземпляра без параметров объявлен в типе X. Он вызывается на объект, на который ссылается значение _x.

(_x сам не является ни объектом, ни ссылка - это переменная.)

+0

Я спрашиваю, как и в книге, которую я в настоящее время чтения они часто говорят: Используйте метод XY переменной А. – Lojol

+0

В настроении еще более педантичным, чем ваш большинство педантичного настроения вы бы сбросили '()' в 'Y()'. :-) – jason

+0

@Jason: Done :) –

1

Y является pubilc метод экземпляра класса на X будучи вызван на экземпляр класса X ссылается _x.

Как и в сторону, призывание, как это на самом деле компилируется как что-то вроде

call X::Y(_x) 

Это потому, что каждый метод уровня экземпляра имеет неявный первый параметр, который представляет собой ссылку на объект, что метод является вызывается (это как this относится к правому объекту).

1

Обычно это не большая проблема, потому что классы и переменные имеют описательные имена, так что это довольно ясно, что к чему.

Пример использования фактический класс:

builder представляет собой переменную, содержащую ссылку на экземпляр StringBuilder класса:

StringBuilder builder = new StringBuilder(); 

Метод Append представляет собой метод в StringBuilder класса, а не метод в переменной builder. Вы вызываете метод на экземпляре, который builder указывает ссылка:

builder.Append("asdf");