iOS- 利用里氏代换原则处理动画类的继承问题
来源:互联网 发布:耳机返听软件 编辑:程序博客网 时间:2024/05/17 07:11
# 关于利用里氏代换原则处理动画类在项目中进行动画的实现的时候,为了方便,通常会创建一个虚类,然后让其子类继承其父类的方法并进行重写,这样,父类便可以让子类进行其初始化,并且父类可以调用其子类的方法。{首先创建一个虚类,这里定义为SourceView,然后创建其两个子类,重写其方法,最后由子类进行初始化初始化出来一个父类的对象,让父类的这个对象调用子类的方法}`//// SourceView.h// 里氏代换原则//// Created by 程磊 on 15/5/14.// Copyright (c) 2015年 程磊. All rights reserved.//#import <UIKit/UIKit.h>@interface SourceView : UIView/** * 定义一个函数方法,不进行具体的操作 */- (void)show;- (void)hide;@end`//// SourceView.m// 里氏代换原则//// Created by 程磊 on 15/5/14.// Copyright (c) 2015年 程磊. All rights reserved.//#import "SourceView.h"@implementation SourceView- (void)hide{}- (void)show{}@end`//// SonView1.h// 里氏代换原则//// Created by 程磊 on 15/5/14.// Copyright (c) 2015年 程磊. All rights reserved.//#import "SourceView.h"@interface SonView1 : SourceView@end`//// SonView1.m// 里氏代换原则//// Created by 程磊 on 15/5/14.// Copyright (c) 2015年 程磊. All rights reserved.//#import "SonView1.h"@implementation SonView1/** * 重写父类的方法 */- (void)hide{NSLog(@"SonView1 hide");}- (void)show{NSLog(@"SonView1 show");}@end`这样,在viewController中便可以这样进行初始化``//// ViewController.m// 里氏代换原则//// Created by 程磊 on 15/5/14.// Copyright (c) 2015年 程磊. All rights reserved.//#import "ViewController.h"#import "SourceView.h"#import "SonView1.h"#import "SonView2.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];//定义一个虚类,然后在初始化的时候用其子类进行初始化,这样的话,在进行初始化完成之后可以调用子类的方法SourceView *sourceView = [[SonView1 alloc] initWithFrame:CGRectMake(10, 100, 100, 100)];sourceView.backgroundColor = [UIColor redColor];[self.view addSubview:sourceView];}@end
0 0
- iOS- 利用里氏代换原则处理动画类的继承问题
- 用里氏代换原则来处理动画类的继承问题
- 类设计之 里氏代换原则
- 里氏代换原则
- [转]里氏代换原则
- 里氏代换原则
- 里氏代换原则概述
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 模式-“里氏代换原则”
- 里氏代换原则
- 里氏代换原则
- 里氏代换原则
- 【基础练习】【传递闭包】codevs1506 传话题解
- NLog文章系列——如何配置NLog
- R+kintr+makdown完成自动化报告
- ZAZ-C005控制套件
- LINUX网卡(设置千兆网卡速度及模式)
- iOS- 利用里氏代换原则处理动画类的继承问题
- 72平台Fat on nand功能实现
- html radio 默认值
- Html页中如何使用加载OCX控件详解
- Linux中的定时任务调度—crontab命令
- hdu 5224 Tom and paper
- 限定textfield输入中文字数
- 华为机试-“十七进制”转“十进制”
- java.lang.NoSuchMethodError: no static or non-static method 解决方法