首页 > 其他分享 >dotnet 虚方法的使用

dotnet 虚方法的使用

时间:2024-05-03 10:33:23浏览次数:21  
标签:VirtualMethod int 子类 使用 dotnet 父类 方法 public

   // 虚方法
   //   作用:允许子类,进行重写,可以实现不一样的功能
   //   特点:好维护 -- 不该变原方法(虚方法)情况下,可以直接使用虚方法或者重写虚方法
   VirtualMethod method = new VirtualMethod();
class VirtualMethod
{
    public VirtualMethod()
    {
        Console.WriteLine("第二个构造函数");
    }
 
    public virtual int add (int a,int b){
        return a + b;
    }
}


// 子类继承父类
class VirtualMethodChild: VirtualMethod
{
    // 重写虚方法 重写父类中的方法必须是虚方法 virtual
    public override int add(int a, int b)   
    {
        return a*b; 
    }
    public int test()
    {
        base.add(2,23);   // 使用父类的方法
        return 12;
    }

}

子类继承父类 子类使用 base.父类中的方法进行对父类中的方法的调用。

标签:VirtualMethod,int,子类,使用,dotnet,父类,方法,public
From: https://www.cnblogs.com/zhulongxu/p/18170980

相关文章

  • 析构方法和垃圾回收器
    //垃圾回收机制://回收非托管资源--Windows窗口句柄,数据库的链接,GDI对象,独占文件锁等等对象//1.Dispose()需要实现IDisposable接口//2.Close()和Dispose()的区别--Close关闭对象,没有完全释放(可以再次使用)。Dispose完全释放(再次使用重新创建)。//析构方法//......
  • 客户端跳转技术,服务端跳转技术,两种跳转的各自使用场合和特点
    客户端跳转和服务端跳转是两种不同的网页跳转技术,它们在各自的使用场合和特点上有所区别。客户端跳转:使用场合:客户端跳转通常在需要直接导航到新的URL或页面时使用。例如,当用户点击一个链接或提交一个表单后,可能需要跳转到新的页面。特点:地址栏信息会改变:跳转之后,浏览器的地址......
  • dotnet Core 静态方法和构造方法
    //静态方法://特点:1.生命周期一旦创建-应用结束才会结束2.全局的3.效率高(放在内存中)//用户:用户登录,系统配置信息,系统设置,SQLHelper//注意:静态的东西创建多了,占用内存会很大//调用:静态方法调用非静态方法不能直接调用,要初始化(new一下)通过对象再去......
  • mORMot 1.18 第18章 使用REST/JSON的客户端/服务器
    mORMot1.18第十八章使用REST/JSON的客户端/服务器JSON是一种被多种语言和众多领先公司接受的标准。正如我们在JSON章节中所解释的,它是标准化的,紧凑且解析速度快,同时当加入非关键性空格时,也易于人类阅读。这些事实使其成为数据交换最受欢迎的格式之一。JSON支持六种数据类型:......
  • 高效遍历:C++中分隔字符串单词的3种方法详解与实例
     概述:在C++中,遍历由空格分隔的字符串的单词有多种方法,包括使用`std::istringstream`、手动遍历字符和正则表达式。其中,`std::istringstream`是简单高效的选择,通过流提取单词。手动遍历字符较为繁琐,正则表达式方法更灵活但可能有性能开销。根据实际需求选择方法,本文提供了清晰......
  • python3.12.3下使用flask-script的Command报错AttributeError: module 'inspect' has
    错误如下图:问题原因:因为inspect.getargspec在3.11+中已弃用。翻看源码如下图解决方案:解决方法是使用inspect.fullargspec代替,并添加3个虚拟变量,因为getfullargspec将返回7个项目而不是4个:args,varargs,keywords,defaults,foo,foo1,foo2=inspect.getf......
  • JAVA-Agent探针打印方法执行的返回值
     1、创建一个maven项目,不要用springboot的 引入依赖<dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.12.0</version></dependenc......
  • 下载工具使用总结
    IDM(InternetDownloadManager)DM是一个下载管理工具。它几乎可以下载任意内容,视频音频下载,网盘下载,还支持各种浏览器的插件。它还有自动化功能,可以定时下载,自动安排下载队列,还能批量下载功能。而且它还是多线程下载内容,让你的下载速度更快。PS:IDM是商业软件。只支持Win版......
  • 使用新版flask-script时报错No module named flask._compat和cannot import name ‘_r
    flask版本:3.0.3Flask-Script:2.0.6Flask-script使用及错误Nomodulenamedflask._compat解决方法windows下推荐解决方案,点击flask_script进入init.py文件或虚拟环境\Lib\site-packages\flask_script_init_.pylinux下cd到目录/usr/local/lib/python3.12/site-packages......
  • 认知提升的方法
    一、什么是认知经验是对于过往经历的总结归纳,当把这种经验传授给别人时,这种经验对别人来说就是知识。所以,知识是人脑对客观事物的信息沉淀。技能是人们通过练习而获得的动作方式和系统,例如操作技能中的PS技术、木工技术、电工技术、水工技术等,而能力是内化的知识和技能。“认知......