C# -- Abstract、Virtual、interface

一、Virtual方法(虚方法)

1)virtual 关键字用于在基类(父类)中修饰方法

2)基类中定义了virtual方法,派生类中使用override重写该方法

二、Abstract方法(抽象方法)

1)abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现

2)抽象方法的实现必须在派生类中使用override关键字来实现

3)abstract:声明抽象类、抽象方法。抽象方法所在类必须为抽象类。抽象类不能直接实例化,必须由其派生类实现

​​​​​​​

三、interface (接口)

1)interface用来声明接口,只提供一些方法规约,不提供方法主体

2)接口方法默认是公有方法,不能用public abstract等修饰,无字段变量,无构造函数

3)接口方法可包含参数

4)接口和抽象类最本质的区别:抽象类是一个不完全的类,是对对象的抽象,而接口是一种行为规范

5)接口定义以大写字母I开头

​​​​​​​

相关推荐
朝朝辞暮i6 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
小师兄吃牛肉7 小时前
C语言篇:宏
c语言·开发语言
郑同学的笔记7 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
未来之窗软件服务7 小时前
C# 截图源码支持自动保存-东方仙盟
c#·仙盟创梦ide·东方仙盟·电脑工具
言乐67 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
weixin_307779138 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
kakakahahahaha8 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i8 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
朝朝辞暮i8 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法
笨笨饿8 小时前
140_AI新手村MCP与Skills是干嘛的
开发语言·人工智能·python·stm32·单片机·嵌入式硬件·物联网