c#访问级别约束的问题
2015-12-28 22:07
369 查看
1.方法的参数的访问修饰符必须与方法的访问修饰符兼容
这时候会报错
..............................................................................
错误 1 可访问性不一致: 参数类型“_02访问级别约束问题.MyClass”比方法“_02访问级别约束问题.MyClass1.M1(_02访问级别约束问题.MyClass)”的可访问性低 F:\03_Net基础加强20130916\Sln20130916\02访问级别约束问题\Program.cs 43 21 02访问级别约束问题
报错的原因是
2.子类的访问修饰符必须与父类的访问修饰符兼容
这时候会报错
..............................................................................
错误 1 可访问性不一致: 基类“_02访问级别约束问题.Parent”比类“_02访问级别约束问题.Child”的可访问性低 F:\03_Net基础加强20130916\Sln20130916\02访问级别约束问题\Program.cs 28 18 02访问级别约束问题
错误的原因是child类的访问级别比基类高,所以错误,这要将
3.方法返回值的修饰符,必须与方法的修饰符兼容
class MyClass { } public class MyClass1 { //方法的参数的访问修饰符必须与方法的访问修饰符兼容。 public void M1(MyClass mc) { Console.WriteLine(mc.ToString()); } }
static void Main(string[] args) { MyClass1 cc = new MyClass1(); MyClass c1 = new MyClass(); cc.M1(c1); Console.ReadKey(); }
这时候会报错
..............................................................................
错误 1 可访问性不一致: 参数类型“_02访问级别约束问题.MyClass”比方法“_02访问级别约束问题.MyClass1.M1(_02访问级别约束问题.MyClass)”的可访问性低 F:\03_Net基础加强20130916\Sln20130916\02访问级别约束问题\Program.cs 43 21 02访问级别约束问题
报错的原因是
<span style="color:#FF0000;">public void M1(MyClass mc)</span>这个方法的参数的访问修饰符为internal而方法的修饰符为public,我们只要把myclass的修饰符改为public时,错误就会消失
2.子类的访问修饰符必须与父类的访问修饰符兼容
class Parent { internal string Name { get; set; } } public class Child : Parent { }
这时候会报错
..............................................................................
错误 1 可访问性不一致: 基类“_02访问级别约束问题.Parent”比类“_02访问级别约束问题.Child”的可访问性低 F:\03_Net基础加强20130916\Sln20130916\02访问级别约束问题\Program.cs 28 18 02访问级别约束问题
错误的原因是child类的访问级别比基类高,所以错误,这要将
<span style="color:#FF0000;"> public class Child : Parent</span>这里的public去掉,或者在基类上面加上public 修饰符,这个错误就会解除
3.方法返回值的修饰符,必须与方法的修饰符兼容
class MyClass { } //如果类MyClass1的访问修饰符也是internal的,则不报错。 //如果把该类的访问修饰符改为public则 报错。 class MyClass1 { //方法的返回值的类型的访问修饰符必须与方法的访问修饰符兼容。 public MyClass M1() { Console.WriteLine("ok"); return null; } }
相关文章推荐
- C# Winform软件多语言(汉语、英语。。。)界面的切换,低耦合
- C#类中属性的定义
- C#简单实现动态数据生成Word文档并保存
- 【C#】向导式窗体
- C#学习笔记009-集合练习
- floyd最短路径算法C#版
- C#关闭word时,提示“此文件正由另一个应用程序或用户使用” normal.dot
- C#保留字
- c# 获取IP地址
- VS 2015相当不错的功能:C#交互窗口
- C# 委托和事件
- c#中的二进制序列化
- C# 本地储存文本的几种方式
- C#中MD5加密
- C#中Picturebox的使用
- c#线程池详解
- C# in Depth
- C# FUNC 应用
- C#基于Office组件操作Excel
- C#驱动及应用