Вы не упоминаете язык программирования в вопросе.
Обычно класс - это модель или шаблон, который объявляет, как выглядит определенная категория объектов.
Вы даете классуимя, и вы упоминаете, если он наследует членов от другого класса или нет.
Вы также определяете членов класса.Это могут быть переменные, которые содержат данные (состояние объекта) и методы (функции, определенные классом), которые определяют поведение объекта.
Когда вы создаете экземпляр класса с помощью объявленной модели, вы получаете объект, который является конкретным классомпример.Это конкретная сущность, представьте ее как новую переменную в памяти, типом данных которой является класс (вместо, например, целочисленных или строковых типов данных), значением которой является ее состояние в определенный момент времени (состояние, являющеесякомбинация всех его значений переменных-членов данных на данный момент).Этот объект должен иметь идентичность, потому что он существует в памяти, и это объект, отличный от других объектов, которые вы можете создать из этого или любого другого класса.Переменные-члены данных содержат конкретные значения для каждого экземпляра.Они не разделяются между экземплярами.
Теперь методы-члены могут совместно использоваться экземплярами, поскольку они не имеют состояния, поэтому они равны для каждого объекта.Они вызываются с некоторыми аргументами и выполняют некоторое действие, которое изменяет состояние объекта или, по крайней мере, тесно связано с конкретным объектом.Но они являются общими для каждого объекта.Методы обычно знают, на какой конкретный объект они действуют, используя специальное имя, например «this» или «self», которое ссылается на «себя».
Объекты обычно присваиваются переменным при создании, сохраняя ссылкук его идентичности, что позволяет оставшемуся коду манипулировать ими.
Вы используете эти переменные для ссылки на конкретный объект вне кода классов, и используете «this» или «self» для ссылки на него изнутриклассы.
Часто вы получаете доступ к элементам объекта, соответствующим имени объекта.Как в 'player.run ()' или 'player.total_score'.Это если player - это переменная, которой вы назначили экземпляр класса Player.Это может выглядеть как player = new Player или player = Player ().
Атрибуты - это просто другое имя, данное членам данных.Иногда атрибуты, а также методы могут быть общедоступными или закрытыми, то есть их может использовать код вне класса, или доступ может иметь только код класса.
Иногда вы видите элементы данных или атрибуты, называемые свойствами.Когда вы получаете доступ к атрибуту, вы получаете доступ к свойству.В некоторых языках, таких как Python, свойство может означать что-то немного отличающееся, но в любом случае тесно связанное ...
Теперь также в зависимости от языка все может быть описано как описано (C ++, Java), или вы можете рассматривать все какобъекты, включая определения классов (Python).
Надеюсь, это поможет, вам также следует поискать в Интернете или в SO информацию о наследовании, переопределении, диаграммах классов и других вещах, связанных с классом.
Этовсе это не более, чем возможность определения ваших собственных типов данных за пределами встроенных типов языка.
Вы можете рассматривать переменные как имена для блоков (контейнеров памяти по определенному адресу), содержащих значения.Но иногда вы хотите манипулировать не значениями, а самими адресами.На этот раз вы говорите, что у вас есть ссылки (на адреса).Иногда переменные - это просто имена для этих ссылок.Ссылки также известны как указатели.Но вы могли бы сделать математику с указателями (увеличение, уменьшение, добавление фиксированного значения к ...), которые вы обычно не делаете со ссылками.