callback(3)--使用方法覆盖
来源:互联网 发布:免费考研的软件 编辑:程序博客网 时间:2024/05/21 09:28
针对callback(1)的需求,我们还可以使用第三种方式来解决,使用virtual的方法。只是客户端调用的时候,必须要自己重新一个car类。代码如下:
其实第一种和第二种都是has-a解决方案;这一种是 is-a的解决方案
CAR:
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace TestCS{ class Car { #region Properties and variables private int maxSpeed = 500; private string petName; private int currentSpeed; public string PetName { get { return petName; } set { petName = value; } } public int CurrentSpeed { get { return currentSpeed; } set { currentSpeed = value; } } #endregion public virtual void OnExploed(string msg) { Console.WriteLine(msg); } bool isExploed=false; public void Accelerate(int delta) { if (isExploed) { OnExploed("Car is exploed!"); } else { currentSpeed += delta; Console.WriteLine("Current Speed is {0}", currentSpeed.ToString()); if (maxSpeed< currentSpeed) isExploed = true; } } }}
客户端:
using System;using System.Collections;using System.Linq;using System.Text;using System.Collections.Generic;using System.Runtime.Serialization;namespace TestCS{ class clientUseCar : Car { //客户端的自定义处理 public override void OnExploed(string msg) { Console.Write("Client method--->"); base.OnExploed(msg); } } class Program { public static void Main(string[] args) { clientUseCar cc = new clientUseCar(); for (int i = 0; i < 10; i++) { cc.Accelerate(100); } } }}
- callback(3)--使用方法覆盖
- callback(2)--使用代理
- CallBack类的使用方法
- callback(1)---callback interface--回传接口
- 测试覆盖:语句覆盖 判定覆盖(即分支覆盖) 条件覆盖 判定-条件覆盖 条件组合覆盖 路径覆盖
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- C++中回调(CallBack)的使用方法
- jQuery学习笔记(二)- 效果和Callback函数
- Android 接口函数回调(callback)的基础使用方法与理解【回调】的具体实现
- C++中CallBack类的使用方法
- 模板方法和Callback回调应用实践-自己动手写JdbcTemplate(附源码)
- perform callback()
- 回调(callback)
- NUnit学习笔记之进阶篇
- 网络协议词典-A
- 浅谈spring时序调度Quartz
- 改变2000系统默认的文件夹显示方式
- 在System.Configuration命名空间下死活找不到ConfigurationManager类
- callback(3)--使用方法覆盖
- Flex开发自定义控件
- 截取字符串方法总结(区分汉字、数字、字母)
- ubuntu 8.04 nginx 安装
- .net生成静态页方法总结
- 网上下载的 图片加上水印功能 只作为一个tag
- 想成为嵌入式程序员应知道的10个基本问题
- css 禅意花园
- 进程间字符串消息