多态的意思:多种形态(对象的多种形态)
父类指针指向子类对象
Animal * a = [Dog new];
调用方法时会检测对象的真实形象
[a eat];//调用的还是子类的方法(Dog)
#import <Foundation/Foundation.h>
@interface Animal : NSObject
-(void)eat;
@end
@implementation Animal
-(void)eat
{
NSLog(@"Animal 在吃东西");
}
@end
@interface Dog : Animal
@end
@implementation Dog
-(void)eat
{
NSLog(@"Dog 在吃东西");
}
@end
int main(int argc, const char * argv[])
{
@autoreleasepool
{
//父类指针指向子类对象
Animal *a = [Dog new];
//调用方法
[a eat];
}
return 0;
}