new 修饰符与 new 操作符是两个概念
new 修饰符用于声明类或类的成员,表示隐藏了基类中同名的成员。而new 操作符用于实例化一个类型
new 修饰符只能用于继承类,一般用于弥补基类设计的不足
new 修饰符和 override 修饰符不可同时用在一个成员上,因为这两个修饰符在含义上互相排斥
示例:
using System;
using System.Collections.Generic;
using System.Text;
namespace Example09
{
class BaseClass
{
//基类设计者声明了一个PI的公共变量,方便进行运算
public static double PI = 3.1415;
}
class DervieClass : BaseClass
{
//继承类发现该变量的值不能满足运算精度,于是可以通过new修饰符显示隐藏基类中的声明
public new static double PI = 3.1415926;
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(BaseClass.PI);
Console.WriteLine(DervieClass.PI);
Console.ReadLine();
}
}
}
结果:
3.1415
3.1415926
相关文章
- 恒创科技:ChatGPT引爆AI火出圈?人工智能AI在云计算中到底起什么作用?
- 时刻牢记基础是关键,万丈高楼平地起靠的是什么?是坚实牢固的地基!
- 江南百景图鬼魂作用 江南百景图鬼魂是做什么的
- 原神什么是元素反应 元素反应结晶作用介绍
- internal修饰符有什么作用呀?
- c#基础概念之internal 修饰符有什么作用
- DirectX 11 Tessellation (曲面细分)—什么是 Tessellation (曲面细分) ?它为什么能够起到如此重要的作用?
- java:什么是抽象类,以及抽象类的作用和用法(abstract)
- CSS是如何工作的,为什么绝对的元素堆叠在一起而不是一个接一个的堆叠?
- 为什么是List list = new ArrayList(),而不直接用ArrayList?