mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2024-12-24 10:01:38 +00:00
+Translation, *Russian auto-translate text fixed
+ Added more English to Russian translation * Auto translated Russian text changed to have more sense and readability
This commit is contained in:
parent
a221318b89
commit
a9febbeb22
@ -381,20 +381,20 @@ if ([myClass respondsToSelector:selectorVar]) { // Проверяет содер
|
|||||||
NSLog(@"MyClass не содержит метод: %@", NSStringFromSelector(selectedVar));
|
NSLog(@"MyClass не содержит метод: %@", NSStringFromSelector(selectedVar));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Имплементируйте методы в файле МойКласс.m:
|
// Имплементируйте методы в файле MyClass.m:
|
||||||
@implementation MyClass {
|
@implementation MyClass {
|
||||||
long distance; // Переменная экземпляра с закрытым (private) доступом
|
long distance; // Переменная экземпляра с закрытым (private) доступом
|
||||||
NSNumber height;
|
NSNumber height;
|
||||||
}
|
}
|
||||||
|
|
||||||
// To access a public variable from the interface file, use '_' followed by variable name:
|
// Для доступа к public переменной, объявленной в интерфейсе используйте '_' перед названием переменной:
|
||||||
_count = 5; // References "int count" from MyClass interface
|
_count = 5; // Ссылается на "int count" из интерфейса MyClass
|
||||||
// Access variables defined in implementation file:
|
// Получение доступа к переменной, объявленной в имлементации происходит следующим образом:
|
||||||
distance = 18; // References "long distance" from MyClass implementation
|
distance = 18; // Ссылается на "long distance" из имлементации MyClass
|
||||||
// To use @property variable in implementation, use @synthesize to create accessor variable:
|
// Для использования в иплементации переменной, объявленной в интерфейсе с помощью @property, следует использовать @synthesize для создания переменной аксессора:
|
||||||
@synthesize roString = _roString; // _roString available now in @implementation
|
@synthesize roString = _roString; // Теперь _roString доступна в @implementation (имплементации интерфейса)
|
||||||
|
|
||||||
// Called before calling any class methods or instantiating any objects
|
// Вызывается в первую очередь, перед вызовом других медотов класса или инициализации других объектов
|
||||||
+ (void)initialize
|
+ (void)initialize
|
||||||
{
|
{
|
||||||
if (self == [MyClass class]) {
|
if (self == [MyClass class]) {
|
||||||
@ -505,10 +505,10 @@ distance = 18; // References "long distance" from MyClass implementation
|
|||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
// Теперь, если мы хотели создать грузовой объект, мы должны вместо создания подкласса класса Car, как это будет
|
// Теперь, если мы хотим создать объект Truck - грузовик, мы должны создать подкласс класса Car, что
|
||||||
// изменять функциональность Car чтобы вести себя подобно грузовику. Но давайте посмотрим, если мы хотим только добавить
|
// изменит функционал Car и позволит вести себя подобно грузовику. Но что если мы хотим только добавить
|
||||||
// функциональность в существующий Car. Хороший пример должен быть чистить автомобиль. Итак мы создадим
|
// определенный функционал в уже существующий класс Car? Например - чистка автомобиля. Мы просто создадим
|
||||||
// категорию для добавления его очистительных методов:
|
// категорию, которая добавит несколько методов для чистки автомобиля в класс Car:
|
||||||
// @interface ИмяФайла: Car+Clean.h (ИмяБазовогоКласса+ИмяКатегории.h)
|
// @interface ИмяФайла: Car+Clean.h (ИмяБазовогоКласса+ИмяКатегории.h)
|
||||||
#import "Car.h" // Убедитесь в том, что базовый класс импортирован для расширения.
|
#import "Car.h" // Убедитесь в том, что базовый класс импортирован для расширения.
|
||||||
|
|
||||||
@ -794,7 +794,7 @@ MyClass *arcMyClass = [[MyClass alloc] init];
|
|||||||
// weakVar-свойство автоматически примет значение nil,
|
// weakVar-свойство автоматически примет значение nil,
|
||||||
// во избежание падения приложения
|
// во избежание падения приложения
|
||||||
@property (strong) MyClass *strongVar; // 'strong' принимает право на владение
|
@property (strong) MyClass *strongVar; // 'strong' принимает право на владение
|
||||||
// объектом. Гарантирует, что объект останится в памяти для использования
|
// объектом. Гарантирует, что объект останется в памяти для использования
|
||||||
|
|
||||||
// Для обычных переменных (не объявленных с помощью @property), используйте
|
// Для обычных переменных (не объявленных с помощью @property), используйте
|
||||||
// следующий способ:
|
// следующий способ:
|
||||||
|
Loading…
Reference in New Issue
Block a user