Какие свойства объекта различают
2. Объекты: свойства и методы.
Объекты (Objects). Как конструирование графического интерфейса, так и
разработка программного кода базируется на использовании программных объектов.
Каждый объект обладает определенным набором свойств и может использовать определенные
методы обработки данных. Если говорить образно, то объекты — это существительные,
свойства объекта — это прилагательные, а методы объекта — это глаголы.
Программные объекты обладают свойствами и могут использовать методы обработки данных.
Классы объектов являются «шаблонами», определяющими наборы свойств,
методов и событий, по которым создаются объекты. Основными классами объектов
являются объекты, реализующие графический интерфейс проектов.
Объект, созданный по «шаблону» класса объектов, является экземпляром класса и наследует весь
набор свойств, методов и событий данного класса. Каждый экземпляр класса
объектов имеет уникальное для данного класса имя.
Основой для создания графического интерфейса проекта является объект «форма» (рис.).
На основании класса объектов Form можно создавать экземпляры
объектов «форма», которые получают имена Form1, Form2 и т. д.
Свойства объекта (Properties). Каждый класс объектов обладает определенным набором свойств. Так,
например, класс объектов Form обладает
несколькими десятками различных свойств, которые определяют размеры объекта
«форма», цвет формы, положение на экране монитора и т. д. (табл.).
Таблица. Некоторые свойства
объекта «форма»
Свойство | Значение | Комментарий |
Name | Form1 | Имя |
Text | Form1 | Текст |
BackColor | Control | Серый |
Font | MS Sans Serif, обычный, 8 | Шрифт, |
Различные экземпляры
класса объектов обладают одинаковым набором свойств, однако значения свойств у
них могут отличаться. Первоначальные значения свойств объектов можно установить
с использованием диалогового окна Свойства
(Properties) системы программирования.
Так, для объекта
«форма» Form1 можно установить требуемое
значение любого свойства. Для этого необходимо выбрать свойство из списка и
изменить его значение.
Значения свойств
объектов можно изменять в программном коде. Для присваивания свойству объекта
нового значения в левой части строки программного кода необходимо указать имя
объекта и затем — название свойства, которые в соответствии с правилами
точечной нотации разделяются между собой точкой. В правой части строки необходимо
записать конкретное значение свойства:
Объект.Свойство
= ЗначениеСвойства
Например, новая
надпись «Первый проект» в левом верхнем углу объекта Form1 (значение свойства Text) появится в результате выполнения программного кода:
Form1.Text = «Первый
проект»
Методы объекта (Methods). Объекты могут использовать различные методы обработки
данных. Методы имеют аргументы, которые позволяют задать значения параметров
выполняемых действий.
Для использования
метода в строке программного кода необходимо указать имя объекта и затем метод,
которые в соответствии с правилами точечной нотации разделяются между собой
точкой. В скобках при необходимости записываются аргументы метода, разделяемые
запятыми:
Объект.Метод (apr1,
арг2)
Например, с помощью
метода Scale (х, у) можно изменить
размеры формы или элемента управления. Аргументы метода x и y являются коэффициентами масштабирования по
горизонтали и вертикали, т. е. позволяют увеличить или уменьшить ширину и
высоту элемента управления. Например, можно в два раза увеличить размер объекта
по оси X и в
два раза его уменьшить по оси Y:
Me.Scale(2,0.5)
Если производятся операции над самой формой,
то вместо ее имени (например, Form1) в программном коде используется имя Me.
Наиболее важная часть объекта – его свойства. Объект представляет из себя набор свойств, и каждое свойство состоит из имени и значения, ассоциированного с этим именем. Именем свойства (ключом) может быть только строка, а вот значением – любой тип данных. Если значением свойства является функция, то её можно назвать методом объекта.
Доступ к свойствам
Свойства объектов в JavaScript являются теми же самыми переменными, за тем исключением, что они закреплены за объектом. Как и все переменные JavaScript, имя объекта (которое тоже может быть переменной) и имя свойства чуствительны к регистру. Свойства объекта определяют его индивидуальные характеристики.
Получить значение свойства можно с помощью операторов точки (.) или квадратных скобок ([]). Значение в левой части оператора должно быть ссылкой на объект, обычно это просто имя переменной, содержащей ссылку на объект, но это может быть любое допустимое в JavaScript выражение, являющееся объектом.
Значение в правой части оператора должно быть именем свойства. При использовании оператора точка (.) справа должен находиться простой идентификатор, соответствующий имени свойства. Доступ к любому имени свойства, которое содержит невалидный JavaScript идентификатор (например, имя свойства содержит в себе пробел, тире или начинается с цифры), может быть получен с использованием квадратных скобок ([]).
Значение свойства может быть любым: как значением простого типа, так и другим объектом. Значения можно вкладывать друг в друга, причем вложений можно делать сколько угодно:
Значение объекта может быть обновлено путем присваивания. Если свойство с таким именем уже существует в объекте, его значение заменяется:
Квадратные скобки также позволяют обратиться к свойству, имя которого хранится в переменной:
Если имя свойства хранится в переменной, то единственный способ к нему обратиться – это применение оператора [] (квадратные скобки).
Определение методов
Метод – это свойство объекта, значением которого является функция. Методы определяются так же, как и обычные функции, за тем исключением, что они присваиваются свойству объекта. Вызов метода осуществляется точно также, как и вызов обычной функции – с помощью оператора вызова ():
Методы объектов можно добавлять и удалять в любой момент, точно также как вы поступаете с обычными свойствами объектов:
Для доступа к свойствам объекта внутри метода используется ключевое слово this. Использование this позволяет ссылаться на объект, к которому принадлежит метод:
Здесь вместо this внутри функции (метода) greeting можно было бы обратиться к объекту, используя переменную person (сам объект):
Ключевое слово this
var person = {
name: ‘John’,
greeting: function() {
alert( ‘Hello, ‘ + this.name + ‘!’);
}
// идентичная запись
greeting: function() {
alert( ‘Hello, ‘ + person.name + ‘!’);
}
В предыдущем примере мы определили функцию внутри свойства greeting во время определения объекта person. Однако, мы можем определить сначала функцию, а затем закрепить ее за свойством person.fun. В таком случае поведение this не изменится:
Эти примеры показывают, что на поведение this совсем не влияет то, где была определена функция, а имеет значение только то, что функция была вызвана из свойства объекта.
Через ключевое слово this метод может получить доступ не только к любому свойству объекта, но и передать куда-нибудь ссылку на сам объект:
Известно, что каждый объект содержит ссылку на свой объект-прототип. Если метод находится где-то в цепочке прототипов, то this ссылается на объект, на котором был вызван метод, т.е. как будто этот метод является методом самого объекта, а не прототипа.
В этом примере объект person, не имеет собственного свойства (метода) fullName, а наследует это свойство от своего прототипа prototypeObject. Поскольку поиск свойства начался с person.fullName, то this внутри функции fullName будет ссылаться на объект person. Таким образом, если fullName вызывается как метод объекта person, то и this относится к person. Это очень важная особеность прототипного наследования JavaScript.
Удаление свойств
Оператор delete удаляет свойство из объекта. Он удаляет свойство объекта, если оно есть. Удаление не касается свойств объектов, связанных по цепочке прототипов. Если свойство с таким же именем существует в цепочке прототипов, объект унаследует это свойство из прототипа.
Выражение delete возвращает true, если удаление свойства прошло успешно. delete вернет false только в том случае, когда свойство не было удалено (например, если свойство относится к защищенному объекту, принадлежащему браузеру). true возвращается даже в том случае, если свойство, которое вы пытаетесь удалить, не существует в объекте:
Итоги
- Объект представляет собой набор свойств.
- Получить значение свойства можно с помощью операторов точки (.) или квадратных скобок ([]).
- Свойства можно добавить в объект в любой момент. Для этого следует присвоить значение с указанием имени нового свойства.
- Метод представляет собой свойство, значением которого является функция. Для ссылки на объект, из которого вызывается метод, используется ключевое слово this.
- Методы можно вызывать в точечной записи: имя объекта, точка и имя свойства метода, за которым следует пара круглых скобок.
- Метод можно рассматривать как функцию, присвоенную свойству, поэтому новый метод можно добавить в любой момент.
- Методы могут получать аргументы, как и обычные функции.
- Если несуществующему свойству объекта присваивается значение, данное свойство добавляется в объект. Для удаления свойств используют инструкцию delete.
Задачи
Свойства объекта
Почему данный код выдаёт синтаксическую ошибку?
var cat = {
legs: 4
name: «Гармония»
color: «Черепаховый»
};alert( cat.name ); // SyntaxError
Показать решение
Решение:
Чтобы исправить ошибку, нужно добавить запятую после первого и второго свойства.
Доступ к свойствам объекта
Сохраните значения свойств объекта myObj в переменных x, y и z. Выведите значения переменных x, y и z через alert.
var myObj = {
«an entree»: «hamburger»,
«my side»: «veggies»,
«the drink»: «water»
};// ваш код
Показать решение
Свойство в переменной
- В переменной myDog сохраните имя свойства объекта dogs: «hunter».
- Присвойте свойство с именем myDog и значением «Ротвейлер» объекту dogs.
- Выведите значение свойства, хранящегося в переменной myDog через alert.
var dogs = {
running: «Арабская борзая»,
hunter: «Лабрадор»,
guard: «Московская»
}// ваш код
Показать решение
Решение:
Если имя свойства объекта хранится в переменной (var myDog = «hunter»), то обратиться к нему можно только через квадратные скобки dogs[myDog].
Обновить свойство
Поменяйте значение свойства guard c «Московская» на «Московская-сторожевая»
var dogs = {
running: «Арабская борзая»,
hunter: «Лабрадор»,
guard: «Московская»
}// ваш код
Показать решение
Решение:
Если имя свойства объекта хранится в переменной (var myDog = «hunter»), то обратиться к нему можно только через квадратные скобки dogs[myDog].
Добавление и удаление свойств
Добавьте в объект dogs свойство с именем driving и значением «Сибирский хаски». Удалите свойство «guard» из dogs. Выведите вновь добавленное и удалённое свойства через alert.
var dogs = {
running: «Арабская борзая»,
hunter: «Лабрадор»,
guard: «Московская-сторожевая»
}// ваш код
Показать решение
Добавление метода
- Определите никак не связанную с приведенными объектами dog_1 и dog_2 функцию testBreed, которая будет выводить породу (breed), тип (a type) и вес (the weight) собаки.
- Присвойте функцию testBreed свойству sayAbout для обоих объектов.
- Запустите функцию testBreed для каждого из объектов.
var dog_1 = {
breed: «Алабай»,
«a type»: «собака-компаньон»,
«the weight»: «50 кг»
}var dog_2 = {
breed: «Бультерьер»,
«a type»: «бойцовская»,
«the weight»: «36 кг»
}// ваш код
Показать решение
Мы используя Vue, разрабатываем компоненты различного рода и условий применения. Одной из ключевых частей любых компонентов — это их интерфейс. Во Vue, передаваемые свойства — являются очень важной, если не самой важной, частью интерфейса компонента.
В ситуации, когда компонент требует множество данных, можно применить несколько способов их передачи. Рассмотрим их.
Набор свойств
Одним из возможных способов — это создать для каждого атомарного значения — отдельное свойство. Посмотрим на код компонента использующий подобный подход:
Шаблон
<template>
<div>
<div>First name: {{ firstName }}</div>
<div>Last name: {{ lastName }}</div>
<div>Birth year: {{ birthYear }}</div>
</div>
</template>
Скрипт
const MIN_BIRTH_YEAR = 1900
export default {
name: ‘PersonInfo’,
props: {
firstName: {
type: String,
required: true,
validator: firstName => firstName !== »
},
lastName: {
type: String,
required: true,
validator: lastName => lastName !== »
},
birthYear: {
type: Number,
required: true,
validator: year => year > MIN_BIRTH_YEAR && year < new Date().getFullYear()
}
}
}
Посмотрим на использование этого компонента
<!— Other part of html template—>
<PersonInfo
first-name=»Jill»
last-name=»Smith»
:birth-year=»2000″
/>
<!— Other part of html template—>
Рассмотрим преимущества и недостатки такого подхода
Преимущества
- Все свойства — независимы. При невалидности одного из значений — сообщение об ошибке будет более точным
- Наглядно содержание передаваемых свойств
- «Плоское лучше вложенного»
- Добавление новых необязательных свойств довольно легкое дело: просто добавляем свойство, которое использует параметр default
props: {
firstName: {
type: String,
required: true,
},
lastName: {
type: String,
required: true,
},
birthYear: {
type: Number,
required: true,
validator: year => year > MIN_BIRTH_YEAR && year < new Date().getFullYear()
},
city: {
type: String,
default: ‘New York’
}
}
Недостатки
- Достаточно многословный код в родительском компоненте, особенно, когда данные берутся из одного объекта. Пример:
<!— Other part of html template—>
<PersonInfo
:first-name=»person.firstName»
:last-name=»person.lastName»
:birth-year=»person.birthYear»
/>
<!— Other part of html template—>
- Многословность в определении свойств (в сравнении с описанием объекта)
Свойство-объект
Существуют ситуации, когда атомарными являются данные не примитивных типов. В заданном примере такими данными может быть объект person.
Рассмотрим пример:
Шаблон
<template>
<div>
<div>First name: {{ person.firstName }}</div>
<div>Last name: {{ person.lastName }}</div>
<div>Birth year: {{ person.birthYear }}</div>
</div>
</template>
Скрипт
import quartet from ‘quartet’ // npm validation package
const v = quartet()
const MIN_BIRTH_YEAR = 1900
export default {
name: ‘PersonInfo’,
props: {
person: {
type: Object,
required: true,
validator: v({
firstName: ‘string’,
lastName: ‘string’,
birthYear: v.and(
‘safe-integer’,
v.min(MIN_BIRTH_YEAR),
v.max(new Date().getFullYear())
)
})
}
}
}
Посмотрим на использование:
<!— Other part of html template—>
<PersonInfo :person=»person»/>
<!— or (bad) —>
<PersonInfo :person=»{ firstName: ‘Jill’, lastName: ‘Smith’, birthYear: 2000 }»/>
<!— Other part of html template—>
Рассмотрим преимущества и недостатки
Преимущества
- Код в родительском компоненте становится короче
- При наличии определённой структуры данных, которая не меняется код становится менее избыточным
Недостатки
- Все значения становятся связанными одним объектом. При невалидности одного из значений — сообщение об ошибке будет говорить о невалидности всего объекта
- При использовании объекта в родительском компоненте: содержание передаваемых данных скрывается за абстракцией этого объекта
- Дополнительный уровень вложенности в компоненте
- Добавление новых необязательных свойств со значениями внутрь объекта невозможно (не знаю как это сделать)
- Для валидации объекта в той же степени, нужно использовать дополнительные инструменты валидации (напр. библиотеку валидации quartet)
Выводы
Я пришел к таким выводам:
- использование отдельных свойств — более предпочтительно.
- Использование свойства-объекта допустимо, когда структура данных этого объекта не будет пополнятся дополнительными необязательными полями со значением по умолчанию.
P. S
Буду рад узнать ваши критерии выбора. Какой подход вы используете и почему? В прочем это и есть основная цель написания этой статьи. Может кто из вас знает лучшие практики и их обоснование? Спасибо, что уделили время.
Update 19:26, 16.01.2019
Также существует третий вариант c v-bind. Смотри обсуждение здесь
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Объекты и методы измерений, виды контроля
Требований по метрологии
Юридическая ответственность за нарушение нормативных
Статья 25 Закона “Об обеспечении единства измерений” предусматривает возможность привлечения юридических и физических лиц, а также государственных органов управления РФ, виновных в нарушении положений этого Закона к административной, гражданской-правовой или уголовной ответственности в соответствии с действующим законодательством.
Кодексом об административных нарушениях и, в частности, статьей 170 “Нарушение обязательных требований государственных стандартов, правил обязательной сертификации, нарушение требований нормативных документов по обеспечению единства измерений” предусмотрено наложение штрафа от пяти до ста минимальных размеров оплаты труда.
Гражданско-правовая ответственность наступает в ситуациях, когда в результате нарушений метрологических правил и норм юридическим или физическим лицам причинен имущественный или личный ущерб. Причиненный ущерб подлежит возмещению по иску потерпевшего на основании соответствующих актов гражданского законодательства.
К уголовной ответственности нарушители метрологических требований привлекаются в тех случаях, когда имеются признаки состава преступления, предусмотренные Уголовным кодексом.
Дисциплинарная ответственность за нарушение метрологических правил и норм определяется решением администрации (организации) на основании Кодекса законов о труде.
Каждый объект измерения (объект окружающего мира) обладает некоторой совокупностью свойств. Свойство — это признак, присущий объекту и отличающий его от других объектов или делающий похожим на них (твердость, цвет, шероховатость и т. д.). Различают существенные и несущественные свойства. Совокупность существенных свойств конкретного объекта выражает его качественную определенность. Измерению подлежат именно свойства, в связи с чем понятие «свойство» используется в определениях многих метрологических терминов.
Свойство как философская категория отражает такую сторону объекта, которая обуславливает его общность или различие с другими объектами и обнаруживается в отношениях данного объекта к другим объектам. Отношением называют результат сопоставления однородных свойств разных объектов или различных сторон конкретного объекта. Например, коэффициент электропроводности у металла больше, чем у диэлектрика; толщина пластины меньше ее длины и ширины. Совокупность проявлений какого-либо свойства образует множество, элементы которого находятся в определенных логических отношениях. Поэтому правомочно говорить о том, что свойство обладает определенной логической структурой.
Огромное разнообразие известных свойств может быть упорядочено путем их многоуровневой классификации. На общесмысловом уровне свойства можно сгруппировать в четыре класса: качественные, количественные, пространственно-временные, комбинированные.
Качественное свойство описывается множеством его проявлений, не обладающих количественной характеристикой. Конкретное проявление качественного свойства принято называть его оценкой. У качественных свойств можно выделить такие признаки: дискретность, непрерывность, неупорядоченность, упорядоченность по сходству, многомерность.
Рассмотрим эти признаки на примере такого качественного свойства, как цвет. Не имеет смысла утверждать, что какой-либо цвет больше или меньше другого. Цвета или идентичны (неразличимы, одинаковы), или различны. В моделях классификации людей по цвету волос (блондины, рыжие, шатены, брюнеты) или лошадей по масти (вороная, буланая, гнедая, каурая, сивая, бурая и др.) цвет выступает как дискретное неупорядоченное свойство. Набор дискретных по цвету объектов может обладать некоторыми признаками упорядоченности по сходству (близости): голубой и фиолетовый цвета ближе к синему, чем к желтому. Радуга представляет собой непрерывное, упорядоченное по сходству подмножество спектрально чистых цветов. Совокупность всевозможных цветов различной цветности и яркости моделируется непрерывным трехмерным множеством: цветовое пространство является трехмерным неевклидовым пространством, в котором отсутствует мера расстояния. Цвет, являясь качественным свойством, обладает и некоторыми количественными признаками (например, яркостью).
Многомерными качественными свойствами, обладающими некоторыми количественными признаками, являются также:
• звук, различаемый по высоте, громкости, длительности, тембру («окраске» звука), модуляции (вибрации, прерывистости);
• вкус, который бывает сладким, горьким, соленым, терпким и т. д.;
• залах — приятный и неприятный, сильный и слабый.
Однако общие модельные структуры для всего многообразия воспринимаемых звуков, вкусов, запахов пока не созданы ввиду слабой изученности самих этих свойств.
Качественные свойства используют в многочисленных моделях идентификации и классификации: распознавания образов, качественного химического анализа, диагностирования, установления сортности и т. п. Следует иметь в виду принципиальную непереводимость качественных свойств в количественные ввиду отсутствия у качественных свойств количественного отношения «больше — меньше».
Количественное свойство описывается множеством его количественных проявлений, и его принято называть величиной. Конкретное проявление количественного свойства называют значением величины. Все величины можно разделить на неархимедовы, скалярные и многомерные.
Неархимедова величина является упорядоченной по размеру, но к ней неприменимо понятие пропорциональности: одно проявление конкретного свойства может быть больше или меньше другого, но определить во сколько раз — невозможно. Принципиальная невозможность установления отношения пропорциональности не позволяет преобразовать неархимедову величину в более привычную скалярную, имеющую единицу измерения. Примерами дискретных неархимедовых величин могут служить: числа твердости минералов (по Моосу), баллы силы ветра (по Бофорту), баллы силы землетрясений по шкале наблюдаемых разрушений и др. Непрерывные неархимедовы величины — это числа твердости металлов (по Бринеллю, Виккерсу, Роквеллу, Шору), кислотные, бромные и йодные числа (для различных веществ), числа светочувствительности (для фотоматериалов) и т. д.
Скалярные величины являются основной и самой разнообразной группой величин. Среди скалярных величин есть счетные (целочисленные), пропорциональные, аддитивные, интервальные, относительные.
Счетные величины дискретны, они выражаются целыми положительными числами. Объекты счета могут быть однородными (электроны, молекулы, металлорежущие станки, политические партии) или разнородными (элементы интегральной микросхемы: транзисторы, конденсаторы, резисторы, контактные площадки и т. д.).
Пропорциональные и аддитивные величины выражаются непрерывным множеством положительных действительных чисел. Для пропорциональной величины имеют смысл операции арифметического вычитания, умножения и деления, для аддитивных — еще и сложения. Примером пропорциональной величины может служить термодинамическая температура, аддитивной — масса. Некоторые скалярные величины в разных ситуациях обладают различными признаками. Так, электрическое сопротивление участка цепи при последовательном соединении резисторов является аддитивной величиной, а при параллельном — пропорциональной. Электрическая емкость ряда последовательно соединенных конденсаторов есть пропорциональная величина, а соединенных параллельно — аддитивная.
Интервальные величины отличаются тем, что для них невозможно логически обоснованно определить нулевое количество — нуль. Одной из наиболее известных интервальных величин является пространственная протяженность вдоль бесконечной прямой, на которой может быть обозначен условный нуль. Интервал протяженности (длина, расстояние) имеет значение, которое начинается с естественного нуля (значения любого интервала начинаются с нуля). Другой пример интервальной величины — текущее время. Счисление его ведется от условного нуля в любую сторону (положительную или отрицательную). Интервал времени между двумя событиями может быть равным нулю, если эти события произошли одновременно. Складывать интервальные величины (например, даты событий) бессмысленно.
Относительными величинами являются разнообразные коэффициенты (пропускания, отражения, усиления, затухания, полезного действия), добротность колебательной системы, вероятность, критерии подобия, размеры плоского и телесного углов, числа Маха, Рейнольдса и др. Относительная величина по определению является отношением двух количественных проявлений одного и того же свойства. Такое отношение выражается безразмерным действительным числом, для которого логически предопределенной единицей измерения является 1 (арифметическая единица).
Многомерные величины могут быть двумерными, трехмерными и различной другой мерности. В этом ряду скалярные величины следует отнести к одномерным. Для многомерных величин логическое соотношение «больше — меньше» в общем случае не имеет смысла. Операции сложения и умножения носят для них специфический характер. Так, сумма нескольких ненулевых векторов может быть равна нулю, а произведение векторов бывает скалярным и векторным.
Примерами двумерных величин являются: импеданс полного электрического сопротивления (совокупность активной и реактивной составляющих полного сопротивления или его модуль и фаза), давление крови человека (совокупность верхнего систолического и нижнего диастолического артериального давления). Трехмерные величины (векторы): перемещение, скорость и ускорение пространственного движения точки, сила, напряженность электрического поля и т. д.
В качестве примеров свойств — 9-мерных величин можно привести тензоры механического напряжения и деформации, показатели преломления света для анизотропной среды и диэлектрической проницаемости.
Пространственно-временные свойства имеет смысл выделить в отдельный класс свойств ввиду фундаментального характера философских и естественно-научных представлений о времени и пространстве. Свойства, отнесенные к пространственно-временной категории, по большей части имеют особые характеристики и могут быть разделены на три группы.
Пространственные свойства включают величины, свойства взаимного расположения, направления и ориентации, формы, пространственной симметрии, структуры и поляризации. Пространственными величинами являются: расстояние (длина), площадь и объем. Расстоянием между двумя точками в евклидовом пространстве считается интервал (длина отрезка) на беспредельно протяженной и не имеющей начала прямой линии, проходящей через эти точки. Может быть так же измерена длина дуги произвольной кривой между двумя точками на ней. Аналогично определяют площадь поверхности любой формы, ограниченной произвольным замкнутым контуром, и объем пространства (тела), ограниченного замкнутой поверхностью произвольной формы.
Для временных свойств в общепринятой модели времени характерны неограниченность в прошлое и будущее, однонаправленность («стрела времени»), непрерывность, равномерность течения времени; имеют место также временные величины. Временными величинами являются собственно время (хронология событий, отсчитываемая от принятого по соглашению нуля — начала летоисчисления) и интервал времени (скалярная аддитивная величина в инерциальной системе отсчета).
Третью группу составляют свойства, которым одновременно присущи пространственные и временные характеристики и которые теория относительности определяет единым пространственно-временным континуумом, обладающим относительностью пространственной протяженности (длины) и интервалов времени в движущихся системах отсчета. В то же время имеет место инвариантность (независимость от системы отсчета) четырехмерного пространственно-временного интервала AS, соответствующего двум событиям:
где координаты событий,
с — скорость света в вакууме.
Комбинированные свойства объединяют различные виды качественных, количественных и пространственно-временных свойств, поэтому их деление на более мелкие классификационные группы нецелесообразно. Комбинированные свойства, как правило, многомерны. Например, состояние погоды характеризуется совокупностью многих показателей; среди них — атмосферное давление, температура, скорость и направление ветра, количество и виды осадков, влажность, степень и вид облачности, концентрация и вид аэрозолей и др.
Оценка свойства (измерение величины) становится возможной только после установления шкалы измерений, которая отображает логическую структуру модели этого свойства на систему условных знаков, баллов, чисел и т. п. Установление шкалы измерений свойства означает, по существу, соглашение о системе кодирования первичной измерительной информации о проявлениях данного свойства у разных объектов.