2015-03-11 2 views
1

На некоторых языках, таких как Python, мы используем self, но на других языках, таких как Java, мы используем this.Разница между «этим» и «я» в языках программирования

Есть ли какая-либо особая причина для этой разницы в имени для той же функции?

+2

Есть ли какая-либо особая причина для любых различий между языками? Это всего лишь предпочтения авторов. Любой язык, основанный на синтаксисе C/C++, будет использовать 'this', но если вы создаете свой собственный синтаксис, вы можете использовать все, что захотите. В VB это 'Me'. – jmcilhinney

+1

Многие из них являются скорее конверсиями, чем стандартными. Я в python может быть изменен на что угодно, если это первый входной аргумент метода member и возвращаемое значение конструктора. На самом деле, на некоторых менее известных языках OO, таких как Matlab, почти одинаковое количество программистов, которые используют «я» или «это», просто потому, что половина из них сначала узнала «стиль», а другие «в этом стиле» " первый. – user3528438

ответ

0

Нет ничего особенного в подкатегории self. Это название предпочтительнее по соглашению Pythonistas.

То же самое касается Java this, ничего особенного, только название, выбранное по соглашению.

2

Это не может быть ответом на его полную степень.

В PHP self используется в методах класса static, тогда как $this относится к экземпляру объекта нестатического класса.

EDIT: В java this аналогично PHP относится к текущему объекту. Что касается python, этот ответ, кажется, очень хорошо объясняет self: https://stackoverflow.com/a/2709832/4490187

+0

Да, я прочитал его, но он не отвечает на все языки. – Macabeus

+0

Немного расширен. – DeDee

Смежные вопросы