c# 继承与多种状态
可访问性:
public 无限制
internal 只允许在同一个程序集访问
protected 允许派生类访问
protected internal protected和internal的合并
private 只能在当前类型中访问
继承:在一个类定义中使用 类1:类2 类1中集继承了类2中的元素

注意:在继承中,首先调用的是基类的构造函数,然后调用派生的构造函数。还要注意可访问性要一致,例如public class A和internal class B
这两个类就不能继承。为了保证从基类继承下来的成员都能访问,派生类的可访问性不应该比基类高。要隐藏基类的成员,可以吧成员定义成
private(这种可访问性,只允许内部访问)。所以在派生类中就不能访问这个成员。
如果我们要覆盖掉基类的成员。就需要加入virtual和override关键字。
virtual:在基类中使用 public virtual void work().....//将其虚化
override:在派生类中使用public override void work()....//覆盖基类中的成员
如果要组织定义的这个类被继承 可以使用 sealed 关键字
public sealed class
抽象类:
抽象类被视为公共类,特征是不能被实例化,使用关键字abstract

这里定义一个抽象类Ball,使用关键字abstract,为只读 然后定义一个B类使用override 覆盖这个抽象类Ball
c# 继承与多种状态的更多相关文章
- Qt编写可拖动对象+背景地图+多种样式+多种状态(开源)
		
在很多项目应用中,需要根据数据动态生成对象显示在地图上,比如地图标注,同时还需要可拖动对象到指定位置显示,能有多种状态指示,为此特意编写本控件,全部开源出来,欢迎大家提建议.同时多多支持整套自定义控件 ...
 - HDU - 1176 免费馅饼 DP多种状态转移
		
免费馅饼 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内.馅饼如果掉在了 ...
 - 基础3:js实现继承的多种方式
		
js实现继承的多种方式 1. 原型链继承 function Parent() { this.name = 'xwk' } Parent.prototype.getName = function() { ...
 - 【编程题与分析题】Javascript 之继承的多种实现方式和优缺点总结
		
[!NOTE] 能熟练掌握每种继承方式的手写实现,并知道该继承实现方式的优缺点. 原型链继承 function Parent() { this.name = 'zhangsan'; this.chil ...
 - 23.C++- 继承的多种方式、显示调用父类构造函数、父子之间的同名函数、virtual虚函数
		
上章链接: 22.C++- 继承与组合,protected访问级别 继承方式 继承方式位于定义子类的”:”后面,比如: class Line : public Object //继承方式是publi ...
 - hdoj2577【多种状态】(简单DP)
		
#include <stdio.h> #include <iostream> #include <sstream> #include <string.h> ...
 - MySQL的优化点总结---通过计算多种状态的百分比看MySQL的性能情况
		
1 读写比例: show global status like 'com_select'; 获得服务器启动到目前查询操作执行的次数:show global status like 'com_inse ...
 - mysql统计一个字段的多种状态
		
假如我有下面的表:ID Item status updatetime author1 a 1 2014-01-0 ...
 - java中抽象、分装、继承和多态的理解
		
1.抽象.封装装.继承和多态是java面向对象编程的几大特点. 抽象:所谓抽象就是对某件事务,我们忽略我们不关心不需要的部分,提取我们想要的属性和行为,并且以代码的形式提现出来:例如我们需要对一个学生 ...
 
随机推荐
- C#生成exe、dll版本号自动增加
			
修改AssemblyInfo.cs 1.注释[assembly: AssemblyFileVersion("1.0.0.0")] 2.[assembly: AssemblyVers ...
 - Vue通过build打包后 打开index.html页面是空白的
			
最近在build打包vue项目遇到了几个问题,如下: 1.npm run build打包项目之后,我们通常是把dist文件里面被压缩后的static文件跟index.html提交到服务器,但最近发现直 ...
 - Python字符串切片
			
1.字符串切片:从字符串中取出相应的元素,重新组成一个新的字符串 语法: 字符串[ 开始元素下标 : 结束元素下标 : 步长 ] # 字符串的每个元素都有正负两种下标 步长: ...
 - ABP中针对sql2008的数据库配置
 - spark on yarn任务提交缓慢解决
			
1.为什么要让运行时Jar可以从yarn端访问spark2以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的spark-assembly-*.jar已经不存在 每一次我们运行的时候,如果 ...
 - 【LeetCode每天一题】Pow(x, n)(平方)
			
Implement pow(x, n), which calculates x raised to the power n (x,n). Example 1: Inpu ...
 - nodejs+mysql入门实例(链接到数据库)
			
//连接数据库 var mysql = require('mysql'); var connection = mysql.createConnection({ host: '******', //数据 ...
 - Amazon RDS多区域高可用测试
			
最近在AWS上面需要部署一组多区域RDS集群,AWS的多区域简单理解就是RDS一主一从分别在当地的两个机房(两个区域).所以就有了下面各方面的测试. 我们需要测试什么? Primary挂掉时,Seco ...
 - 无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。
			
将项目部署到服务器后发现有如下问题,查了网上好多说是需要被序列化的类没有写上[Serializable]标志,所以把全部需要序列化的列都写上了标志发现还是不是,最后查到了发现网上说的并不太准确,而是需 ...
 - winhex模版
			
模版数据类型: char 字符 字符数组 char[i] binary 显示为二进制 hexadecimal uint32 显示4个字节,按16进制小端显示