04일째 OC 언어(17): 클래스 대상 및 클래스 대상 응용 장면 가져오기
수독: 이 문장을 다 보고 나서 당신은 무엇을 할 수 있습니까?
Class 키워드와 Class 일부 응용 장면을 사용하여 코드의 복용성을 높인다
학습 전: 당신은 반드시 무엇을 할 줄 알아야 합니까?
종류가 무엇인지, 종류가 무엇인지.
노트
Class c1 = [p1 class];
Person *p3 = [[c1 alloc] init];
p3.age = 33;
NSLog(@"age = %i",p3.age);
[c1 test];
코드
main.m
#pragma mark 17-
#pragma mark
/*
Class c1 = [p1 class];
Person *p3 = [[c1 alloc] init];
p3.age = 33;
NSLog(@"age = %i",p3.age);
[c1 test];
*/
#pragma mark -
#import
#pragma mark
#import "Person.h"
#import "Car.h"
void demo(Class c);
#pragma mark - main
int main(int argc, const char * argv[])
{
// 1.
Person *p1 = [[Person alloc]init];
Person *p2 = [[Person alloc]init];
//
Class c1 = [p1 class];
Class c2 = [p2 class];
Class c3 = [Person class];
NSLog(@"c1 = %p , c2 = %p",c1,c2);
#pragma mark
// 2.1
Person *p3 = [[c1 alloc] init];
p3.age = 33;
NSLog(@"age = %i",p3.age);
// 2.2
[c1 test];
demo(c1);
demo([Car class]);
return 0;
}
void demo(Class c)
{
id obj = [[c alloc]init];
NSLog(@"%@",obj);
}
Person
>>>.h
#import
@interface Person : NSObject
@property int age;
+ (void)test;
@end
>>>.m
#import "Person.h"
@implementation Person
+ (void)test
{
NSLog(@"test");
}
@end
Car
>>>.h
#import
@interface Car : NSObject
@end
>>>.m�
#import "Car.h"
@implementation Car
@end
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.