C#虚方法、抽象类、方法重写
Timer。每隔一段时间触发一个事件。不可视控件。Interval、Enabled。Tick事件。计量单位:ms(毫秒)。 1秒=1000毫秒。取当前时间 DateTime.Now.ToString()。pictureBox1.Load(@"D:\www\mm\00_01.jpg")。
i.ToString("00")
GDI+:命名空间:System.Drawing;(基本绘图操作)。Graphics对象,可以理解为一只画笔,要在哪个控件上绘图,就要得到对应控件的Graphics对象(就是获得对应控件的绘图表面)。获得Graphics对象一般有两种方式:1.控件.CreateGraphics()//通过该方式创建后要调用g.Dispose()方法释放资源。2.在重写OnPaint()方法中通过参数PaintEventArgs e.Graphics;来获得,一般使用为Paint事件中。//通过这种方式一般不需要手动调用Dispose();区别OnPaint()与窗体的Paint事件。(画一些简单图形)
什么样类型的对象需要使用完成后Dispose()?答:Pen,Brush,Font,Image,Ico,FileStream(文件操作),网络操作等。 (在这些类中封装了一些操作系统的资源)//Pens.XXX或Brushes.XXX等不需要,手动创建的才需要。强行释放资源会出错.
虚方法:使用virtual关键字修饰,使用virtual关键字修饰的方法在本类中必须有实现,哪怕是空的{}。虚方法存在的意义就是为了让子类重写。子类可以重写,也可以不重写。方法重写:只有用virtual、abstract、override修饰的方法在继承后子类可以重写。//实现方法重写的方式3个关键字
什么是方法重写?答:方法重写是指子类继承父类后在子类中有一个与父类中某个方法签名一致,但方法内容可以重新定义的方法,并用override关键字修饰。
抽象类:abstract关键字修饰;不能实例化;可以有抽象成员也可以有非抽象成员(1.有抽象成员的类必须标记为abstract,并且不能有任何实现;2.类中的抽象成员在子类中必须实现(override),除非子类也是抽象类);
virtual方法和abstract方法的区别:virtual方法子类可以override,也可以不override。Abstract标记的成员在子类中必须override,除非子类也是抽象类。
Virtual注意:1.使用virtual关键字表示方法,写在返回值的签名public virutal或virtual public2.使用virutal关键字修饰的方法必须有实现{}3.子类可以重写,也可以不重写。子类重写时使用override关键字。
注:方法重写时,方法签名必须与父类中的虚方法完全一致,否则重写不成功,其中包括“返回值”
Abstract注意:抽象类不能被实例化。如果一个类中有任何抽象成员,那么这个类也必须是抽象类abstract class。子类继承抽象类后,必须重写父类中的所有抽象成员,除非子类也是一个抽象类。抽象成员在抽象类中不能有任何实现。抽象类中可以有抽象成员也可以有非抽象成员
C#虚方法、抽象类、方法重写的更多相关文章
- 实现继承+接口继承+虚方法+隐藏方法+this/base+抽象类+密封类/方法+修饰符
概念: 在上一节课中学习了如何定义类,用类当做模板来声明我们的数据. 很多类中有相似的数据,比如在一个游戏中,有Boss类,小怪类Enemy,这些类他们有很多相同的属性,也有不同的,这个时候我们可以使 ...
- Java基础进阶:继承重点摘要,继承详解,方法重写注意事项,方法重载与重写的区别,抽象类,代码块, 附重难点,代码实现源码,课堂笔记,课后扩展及答案
继承重点摘要 *继承的特点: 子类在初始化之前,一定要先完成父类数据的初始化 子类在初始化之前,一定要先访问父类构造,完成父类数据的初始化 系统在每一个构造方法中默认隐藏了一句super(); 如果我 ...
- static修饰的方法不能被重写可以被继承
今天我们谈谈为什么抽象类中不能有静态的抽象方法以及static修饰的方法不能被重写可以被继承 1 static修饰的方法不能被重写可以被继承我们知道static修饰的方法为静态方法,可以直接使用类名. ...
- .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]
方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...
- java基础疑难点总结之成员变量的继承,方法重载与重写的区别,多态与动态绑定
1.成员变量的继承 1.1要点 子类用extends关键字继承父类.子类中可以提供新的方法覆盖父类中的方法.子类中的方法不能直接访问父类中的私有域,子类可以用super关键字调用父类中的方法.在子类中 ...
- java方法重载 与 重写
class ChongZai{ public void a(int a); public void a(Strting a); public void a(int a,int b); } 如上就是一个 ...
- java中equals方法和hashcode方法的区别和联系,以及为什么要重写这两个方法,不重写会怎样
一.在Object类中的定义为:public native int hashCode();是一个本地方法,返回的对象的地址值.但是,同样的思路,在String等封装类中对此方法进行了重写.方法调用得到 ...
- java方法重载和重写
1.java的方法重载和重写,表示两种不同的类型.this关键字,出现在类的构造方法中,代表使用该构造方法所创建的对象.,this可以出现在实例方法中核构造方法中.但是不能出现在类方法中.实例方法只能 ...
- Openstack中用秘钥对(keypair)生成和访问虚机的方法
Openstack中用镜像文件生成的image来创建虚机(VM或Instance)时, 通常不支持用户名加密码的ssh方式登录访问该VM,而是用秘钥对(keypair)方式. 这里以Centos的镜像 ...
- 【知了堂学习笔记】java 方法重载与重写的归纳
方法重载:Java的方法重载,就是在类中可以创建多个方法,它们可以有相同的名字,但必须具有不同的参数,即或者是参数的个数不同,或者是参数的类型不同.调用方法时通过传递给它们的不同个数和类型的参数来决定 ...
随机推荐
- 数据挖掘经典算法——K-means算法
算法描述 K-means算法是一种被广泛使用的基于划分的聚类算法,目的是将n个对象会分成k个簇.算法的具体描述如下: 随机选取k个对象作为簇中心: Do 计算所有对象到这k个簇中心的距离,将距离最近的 ...
- 浅谈Uber与滴滴快的提供差异化服务带来的商业模式思考
一.引言 滴滴和快的烧钱的时代已经过去,在那个时代我们消费者着实得到了不少实惠.自从他们温柔的在一起之后,这种实惠就木有了.让我不禁感叹坐车的几率有降低了50%.前段时间,Uber悄无声息的进入我的视 ...
- css自动换行与不换行
1.自动换行 div{ word-wrap: break-word; word-break: normal; } 2.不换行 div{ white-space:nowrap; } 3.浮动效果不换行 ...
- Chrome插件——一键保存网页为PDF1.0发布
最新版本:V1.1 下载地址:http://download.csdn.net/detail/bdstjk/5722317 发布时间:2013-7-8 版本号:1.1.7.80 更新内容: 1.增加检 ...
- 【Todo】Nodejs学习计划
/Users/baidu/Documents/Data/Interview/Web-Server开发/深入浅出Node.js-f46c.pdf /Users/baidu/Documents/Data/ ...
- CentOS7.x 通过mail命令发,使用465端口(smtps协议)发送邮件
#创建证书mkdir -p /root/.certs/echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CE ...
- 判断浏览器是否支持 JS
在有些浏览器中不支持(或者被禁用了)脚本语言,那么javascript脚本则无法被执行.但是用户并不知道浏览器是否支持,或者被禁用.我们可以通过<noscript>标签来告知用户,JS脚运 ...
- scrapy-splash抓取动态数据例子十一
一.介绍 本例子用scrapy-splash抓取活动树网站给定关键字抓取活动信息. 给定关键字:数字:融合:电视 抓取信息内如下: 1.资讯标题 2.资讯链接 3.资讯时间 4.资讯来源 二.网站信息 ...
- shareToQQ,qq 4.1.1 for android,闪退
用shareToQQ函数分享图文消息,在qq 4.1.1 for android版本下打开联系人列表数秒后会闪退!在更高版本的V4.5.2.1,V4.2.1下则没有这个问题(证明各种设置没问题),各位 ...
- 【玩转cocos2d-x之三十九】Cocos2d-x 3.0截屏功能集成
3.0的截屏和2.x的截屏基本上同样.都是利用RenderTexture来处理,在渲染之前调用call函数,然后调用Cocos的场景visit函数对其进行渲染,渲染结束后调用end函数就可以.仅仅是3 ...