C#修饰符stattic、virtual、abstract、override、sealed、extern

来源:互联网 发布:火车头数据采集器使用 编辑:程序博客网 时间:2024/04/27 04:58
  1. static
    用于所有成员(函数,类、方法、属性)成员不作用于类的具体实例。因此不需要实例化。
创建的一个Test1类里面包含static静态的属性和方法using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace WindowsFormsApplication3{   public class Test1    {       public static string a = "123";       string _b = "";       public string b       {           get { return _b; }           set { value = _b; }       }       public static void TestFunction()       {       }    }}FORM窗口中调用该函数Test1.a = "qwe";Test1.TestFunction();注意:这是不需要实例化的。
  1. virtual
    用于函数成员,成员可以由派生类重写。用该修饰符修饰的函数可以作为正常的函数使用,也可以在派生类中用override进行重写。
  2. abstract
    对于该修饰符,在我的另一篇微博中作出了详细的讲解。
    4.sealed
    用于类、方法和属性。对于类不能进行继承只能实例化。对于属性和方法,不是类的每个成员方法都可以作为密封方法,要作为密封方法必须对基类的虚方法进行重写,提供具体的实现方法。
using System ;class A{   public virtual void F( )   {         Console.WriteLine("A.F") ;    }   public virtual void G( )   {            Console.WriteLine("A.G") ;    }} class B: A {     sealed override public void F( )     {           Console.WriteLine("B.F") ;        }     override public void G( )     {           Console.WriteLine("B.G") ; }     } class C: B {    override public void G( )    {         Console.WriteLine("C.G") ;      }}

5.extern
extern 修饰符用于声明在外部实现的方法。 extern 修饰符的常见用法是在使用 Interop 服务调入非托管代码时与 DllImport 特性一起使用。 在这种情况下,还必须将方法声明为 static,如下面的示例所示:
[DllImport(“avifil32.dll”)]
private static extern void AVIFileInit();
将 abstract 和 extern 修饰符一起使用来修改同一成员是错误的做法。 使用 extern 修饰符意味着方法是在 C# 代码的外部实现的,而使用 abstract 修饰符意味着类中未提供方法实现。

示例 1. 在此示例中,程序接收来自用户的字符串并将该字符串显示在消息框中。 程序使用从 User32.dll 库导入的 MessageBox 方法。 //using System.Runtime.InteropServices;    class ExternTest    {        [DllImport("User32.dll", CharSet=CharSet.Unicode)]         public static extern int MessageBox(IntPtr h, string m, string c, int type);        static int Main()        {            string myString;            Console.Write("Enter your message: ");            myString = Console.ReadLine();            return MessageBox((IntPtr)0, myString, "My Message Box", 0);        }    }
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 opp0商店没有了怎么办 华硕打不开机怎么办 飞利浦电视待机打不开怎么办 微信支付扫码牌怎么办 微信付款没扣钱怎么办 移动充值卡有效期到了怎么办 联华提货券过期怎么办 狗吃了西红柿怎么办 加盟总店关了怎么办 欧亚超市购物卡怎么办 欠招行信用卡一万多逾期怎么办 白条取现失败怎么办 啤酒喝醉了难受怎么办 喝啤酒喝醉头疼怎么办 运动鞋鞋子大了怎么办 运动鞋买大一号怎么办 跑鞋买大了怎么办 鞋子大一个手指怎么办 一体式手机死机怎么办 ivvi手机声音小怎么办 单位欠缴社保怎么办 哆点错误代码1怎么办 忘记密码怎么办简单一点 智校园忘记密码怎么办 wps图片显示空白怎么办 dr.com闪退怎么办 联想笔记本连不上无线网络怎么办 长时间不用电池休眠怎么办? 校园电信卡欠费怎么办 校园联通卡欠费怎么办 校园网等不上怎么办 app显示尚未授权怎么办 手机屏有气泡怎么办 平板老是闪退怎么办 挖机环保不合格怎么办 摩托车高压火弱怎么办 助力转向机漏油怎么办 淘宝运费险不够怎么办 iphonex锁屏延迟怎么办 淘宝不能评价了怎么办 微商卖香烟不发货怎么办?