Логично было бы предположить, что объекты второго класса реализуются при помощи объектов первого.
Например, в Perl есть процедуры, first-class object. В Java их нет, но можно объявить класс со статическим методом. Вывод: процедуры в Java — 2-class object.
Здравствуйте, Temoto, Вы писали:
T>Например, в Perl есть процедуры, first-class object. В Java их нет, но можно объявить класс со статическим методом. T>Вывод: процедуры в Java — 2-class object.
Процедура в Perl не объект первого класса. Статический метод в Java -- тоже.
Объект первого класса это то, что можно сохранить в переменную, передать в процедуру, вернуть из процедуры, создать в рантайм и в общем случае -- иметь на это несколько ссылок с разными именами. Процедуру Perl нельзя создать в рантайм. Статический метод -- тоже.
Здравствуйте, Temoto, Вы писали:
T>Логично было бы предположить, что объекты второго класса реализуются при помощи объектов первого.
да я ж не про логику, а про термины и понятия, т.е. существует ли такое понятие-термин в природе, или объекты делятся на те, что первого класса, и те, что к первому классу не относятся
Здравствуйте, Кодёнок, Вы писали:
Кё>Здравствуйте, monax, Вы писали:
M>>Вот есть объекты первого класса. А есть ли объекты других классов (2, 3, 4, ..., n)?
Кё>Название сделано по аналогии “первый сорт” и “второй сорт”, а не от математических понятий.
Ну насчет сорта — бывает ещё высший и третий ,
а тут скорее всего по аналогии с "осетриной первой свежести" .
T>>Логично было бы предположить, что объекты второго класса реализуются при помощи объектов первого.
M>да я ж не про логику, а про термины и понятия, т.е. существует ли такое понятие-термин в природе, или объекты делятся на те, что первого класса, и те, что к первому классу не относятся
Гугель говорит, что "second class object" упоминается 173K раз. В Java мире такой термин определённо существует, но обозначает совсем не то.
Самое близкое значение, вроде, здесь http://www.cs.gsu.edu/~skarmakar/cs3410/slide1.ppt
Вывод: такое понятие существует, но не используется