您的位置:知识库 »

new 修饰符是起什么作用?

作者: Clark Zheng  来源: 博客园  发布时间: 2008-09-10 19:06  阅读: 6871 次  推荐: 0   原文链接   [收藏]  

系列文章导航:

静态成员和非静态成员的区别?

const 和 static readonly 区别?

extern 是什么意思?

abstract 是什么意思?

internal 修饰符起什么作用?

sealed 修饰符是干什么的?

override 和 overload 的区别?

什么是索引指示器?

new 修饰符是起什么作用?

this 关键字的含义?

可以使用抽象函数重写基类中的虚函数吗?

C#基础概念之密封类,属性访问器,接口

类和结构的区别?

C#基础概念之抽象类,接口,接口多继承

别名指示符是什么?

如何手工释放资源?

C#基础概念之P/Invoke,StringBuilder 和 String

explicit 和 implicit 的含义?

params 有什么用?

什么是反射?


9.new 修饰符是起什么作用?

答:

  new 修饰符与 new 操作符是两个概念;

  new 修饰符用于声明类或类的成员,表示隐藏了基类中同名的成员。而new 操作符用于实例化一个类型;

  new 修饰符只能用于继承类,一般用于弥补基类设计的不足;

  new 修饰符和 override 修饰符不可同时用在一个成员上,因为这两个修饰符在含义上互相排斥。

示例:

new的修饰符
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

0
0

热门文章

    最新文章

      最新新闻

        热门新闻