c#中New关键字有什么作用

作者&投稿:简之 (若有异议请与网页底部的电邮联系)
C#中new关键字的用法及理解~

new public void Show()中的new是隐藏基类Show作用。
在子类Show中写一个和基类Show一样名字的非虚方法,会让基类中的函数被隐藏,编译后会提示要求使用New关键字来显示的隐藏基类的方法。
C#中new关键字的用法
1.new 运算符 用于创建对象和调用构造函数。
2.new 修饰符 用于隐藏基类成员的继承成员。
3.new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型。

扩展资料
1.方法的重载
重载:指的是同一个类中有两个或多个名字相同但是参数不同的方法,(注:返回值不能区别函数是否重载),重载没有关键字。
作用:允许你以相同的名称不同的参数来调用多个方法
2.方法的重写
重写:是指子类对父类中虚函数或抽象函数的“覆盖”。
特点:
(1)重写的父类中的方法必须用 virtual、abstract 或 override 修饰,且不能重写非虚方法或静态方法。
(2)override的方法和virtual的方法必须具有相同的访问级别修饰符。
3.方法的隐藏(New)
隐藏:在子类中写一个和基类一样名字(参数不同也算)的非虚方法,会让基类中的函数被隐藏,编译后会提示要求使用New关键字来显示的隐藏基类的方法。
参考资料
https://baike.baidu.com/item/重载
网页链接

哇,楼上够清楚了。

是静态的就不需要new
,也就是前面有public
修饰符的。

同类里面的也不需要
new

这是面向对象里面的知识。
类是不能直接来用的。
比如说,人类,它是指一群人所共有的东西(成为抽象,抽象即为虚幻)。
它只能代表人【能】做什么,比如说人能说话,人能吃饭。
但是却不能让人【去】做什么。因为人类只是抽象出来的,虚设的东西。
你要想让人【去】做事,你就得将这种抽象实例化。实例就是指定一个人,通俗的就是创造一个人。创造即为new(新建)。
比如TextBox类,你要让他去显示,去被赋值,你就得new他。
TextBox tx = new TextBox();

你要是自己建了一个类:

public class Person
{
}
要创建其实例就得,Person ps=new Person();

其他数据类型的new,自己可以举一反三。
抓住 “抽象”,“实例”这两个名词。

实例化一个对象(类、数组、接口等)
比如有一个类:
class a{
public go()
{ }
}

调用:a test=new a();
test.go();

实例化数组:string str=new string[10];

new 嘛
实例化一个类。
比如有一个类叫汽车。你现在想在程序中买一辆,所以你用new来买了一辆汽车,这辆车你得给你找个名字,比如宝马。呵呵所以就成
汽车 宝马 = new 汽车

你有钱了,你要再来一辆

汽车 奔驰 = new 汽车

但他们都有汽车该有的东西:四个轮子,一个方向盘,发动机,车门。所以都是汽车一类的东西。

你看来还没有理解c#的本质,可以这样,c#所有东西全都是类,一个继承另一个,子类继承父类。
连string都是个类。申明一个字符串变量,就是实例化一个string类。

实例化类这个嘛不是c#才有问题,是面向对象的问题。
一个包装好了的功能的代码块就可以作为一个类。但你不能直接用它,因为面向对象概念中是不允许随便修改类的内容的。要用你就要实例化。就像汽车这个类。你要用行,但你不能改了汽的一些基本性质上的东西。比如你不能让四个轮子变成只有两个。你不能却掉方向盘。但是你不甘心啊,所以你实例化了,系统就给你一个类似于汽车镜像一样的汽车,他有了汽车通有的东西。你自己给他一个名字,以后你就可以随意让车开开停停,改改装装,你说我要加一排灯行,你可以加在你的实例上,但不要加到类上,因为你一加到类上了,别人实例化了的汽车也有一排的灯了,人家又不喜欢怎么办呢。

其实你申明字符串变量的时候一般没有用到new因为这种东西有点儿不一样,系统准许你不用new来声明,直接用
string 变量名
就行了
但用new也没有错,一样是可以的。

c#就是有强大的类库,什么意思呢,就是基本上所有你要完成的程序都可以用c#类库(有很多很多类),实例化你要用的。拼起来就行了。绝大多数类还是要用new的。


就是实例化对象 搞个新的出来

就是实例化一个对象!


龙里县15151452403: C#中new的作用 -
刘咸消炎: (1)new 运算符 用于创建对象和调用构造函数. (2)new 修饰符 用于隐藏基类成员的继承成员. (3)new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型.new 运算符 1.用于创建对象和调用构造函数 例:Class_Test MyClass = new ...

龙里县15151452403: c# new有什么用? -
刘咸消炎: 日常C#编程中经常用到的New关键字.(1)new 修饰符 用于隐藏基类成员的继承成员.(2)new 运算符 用于创建对象和调用构造函数.(3)new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型.【new 修饰符】 使用 new 修饰符显式隐...

龙里县15151452403: 在C#中 new 关键字除了声明实例外,还有什么用途?麻烦说详细些! -
刘咸消炎: 在 C# 中,new 关键字可用作运算符、修饰符或约束.new 运算符 用于创建对象和调用构造函数.new 修饰符 用于向基类成员隐藏继承成员.new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型.没事多看看VS C#里的帮助文档吧..里面都有

龙里县15151452403: 在c#中new有什么作用? -
刘咸消炎: new 嘛 实例化一个类.比如有一个类叫汽车.你现在想在程序中买一辆,所以你用new来买了一辆汽车,这辆车你得给你找个名字,比如宝马.呵呵所以就成 汽车 宝马 = new 汽车 你有钱了,你要再来一辆 汽车 奔驰 = new 汽车 但他们都有汽车...

龙里县15151452403: 1在c#中using和new这两个关键字有什么意义 -
刘咸消炎: using是引入命名空间,new是实例化一个对象.

龙里县15151452403: c#在c#中new关键字用于创建实例 、 和 . -
刘咸消炎: new关键字可以用于创建实例、修饰符和约束.1)new 创建实例:用于创建对象和调用构造函数.2)new 修饰符:在用作修饰符时,new 关键字可以显式隐藏从基类继承的成员.3)new 约束:用于在泛型声明中约束可能用作类型参数的参数的类型.

龙里县15151452403: C#中new怎么用?可以用来新建函数吗? -
刘咸消炎: 不能,新建新的实例……三种用法如下:在 C# 中,new 关键字可用作运算符、修饰符或约束.1)new 运算符:用于创建对象和调用构造函数.这种大家都比较熟悉,没什么好说的了.2)new 修饰符:在用作修饰符时,new 关键字可以显式隐藏从基类继承的成员.3)new 约束:用于在泛型声明中约束可能用作类型参数的参数的类型.

龙里县15151452403: C#编程中的 New 关键词的几种用法 -
刘咸消炎: 有几种用法,虽说在日常编程中经常用到这个小家伙,但它到底有几种用法还真没有留意过,现将从网上总结出的资料记下以供同仁学习.(1)new 运算符 用于创建对象和调用构造函数.(2)new 修饰符 用于隐藏基类成员的继承成员.(3)new ...

龙里县15151452403: C# 类实例化的时候用NEW关键字除了调用构造函数之外,还有什么用途啊? -
刘咸消炎: 实例化时候的那个new用于创建对象和调用构造函数.这就是它的用途了.如果不是实例化时候调用的new那是有其它含义的.比如可以用于向基类成员隐藏继承成员. int,float,char等等是预定义的值类型,存放于堆栈中.string虽然是预定义的引用类型,存放于堆中.C#为了使语义遵循一般的,直观的字符串规则,对字符串的运算符(如"+"运算符)进行了重载. 总结一下.值类型存放于堆栈,不用实例化.引用类型存放于堆,需要用new运算符实例化.为什么string不用实例化呢.其实string是披着羊皮的狼.由于作了特殊处理,string s="大便";这条语句编译器会认为是与string s=new string("大便");等效的.

龙里县15151452403: c#中new()约束符有什么作用? -
刘咸消炎: 第一:where只用于泛型,所以应该是:public class BaseClass<T> where T : new() {public T SomeMethod() { return new T(); } } 第二: where T : new()的意思是,这个T必须有public构造函数,如果new BaseClass<T>()的时候,这个T...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网