永发信息网

c#中类的问题

答案:2  悬赏:0  手机版
解决时间 2021-02-04 21:02
  • 提问者网友:相思似海深
  • 2021-02-04 03:39
c#中类的问题最近在学csharp请问静态非静态到底怎么记用法,静态方法中可以引用静态字段和非静态字段吗?非静态方法中可以引用静态字段和非静态字段吗?

属性什么时候用静态,什么时候非静态?

请详细解释一下
最佳答案
  • 五星知识达人网友:荒野風
  • 2021-02-04 04:04
静态是通过关键字 static 来修饰的。
1、 方法(void )是在类内部的。 也就是 先有Class  后有void 如:
public class MyClass
{
     public void MyVoid(){ }
}//正确
public static class MyClass
{
     public void MyVoid(){ }
}//错误 静态类内部的方法都必须是静态的
public  class MyClass
{
     public static  void MyVoid(){ }
}//正确那么如果MyClass是静态类, 类内部的所有方法,都必须是静态方法。
而如果MyClass是普通的类,内部的方法也可以用static来修饰, 只有带static的方法是静态方法。
同理,静态类内部的变量也必须是静态的,而普通类内部可以声明静态变量。



然后回答你的问题,
1静态方法中可以引用静态字段和非静态字段吗?
都可以。 
2非静态方法中可以引用静态字段和非静态字段吗?
都可以
3属性什么时候用静态,什么时候非静态?
静态属性、变量,也叫做“全局变量”。当你有一个属性需要到处都用的时候,就可以考虑把他声明成静态的。 
比如一个系统,登录的时候会根据用户输入的账号(123)来获取用户名(张三)。那么可以把“用户名”作为一个静态属性, 登录的时候赋值,后面需要用的时候直接取就可以了,就不用每次都取根据账号来查询了。
而静态方法也是如此,当一个方法(大多数是无参方法、或者固定输入输出类型的常用方法)
就可以写成静态的,调用的时候就不用声明一个新的实例了。
静态类、方法优点是一直都在(静态。。),用起来简单,而缺点也明显,就是无法释放资源,比较复杂的函数一般都要写成动态的,否则太占资源。
全部回答
  • 1楼网友:痴妹与他
  • 2021-02-04 05:31
在这两个语句中,这个是对的: public sealed class class1 { public int sa() } 密封类: c#中的密封类(sealed)是指该类不可以被继承 密封类中的方法不需要定义成密封的。 密封类不能用作基类。因此,它也不能是抽象类。密封类主要用于防止派生。由于密封类从不用作基类,所以有些运行时优化可以使对密封类成员的调用略快。 密封成员: 在对基类的虚成员进行重写的派生类上的类成员、方法、字段、属性或事件可以将该成员声明为密封成员。在用于以后的派生类时,这将取消成员的虚效果。方法是在类成员声明中将 sealed 关键字置于 override 关键字的前面。例如: public class d : c { public sealed override void dowork() }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯