C# 中虚方法和抽象方法

C# 中虚方法和抽象方法

今天在云和学院学了很多,我这次只能先总结一下C#中的虚方法和抽象的运用。

理论:

虚方法:

用virtual修饰的方法叫做虚方法

虚方法可以在子类中通过override关键字来重写

常见的虚方法:ToString() Equals

抽象方法

抽象类与抽象方法由abstract修饰

abstract的使用注意

–抽象方法没有方法体
–抽象成员只能存在于抽象类中
–抽象类可以有非抽象成员
–抽象类的派生类必须实现抽象方法体
–抽象类只能用作基类,无法实例化

补充:

重写:不同对象对于同一个方法调用的不同行为(指不同对象收到相同消息时,会产生不同行为)

C# 中虚方法和抽象方法

实操:

定义一个People的父类,包括Name,Gender,Age,和一个PeoHi 的虚方法,定义两个子类Teacher,包括Year,Salary两个属性和一个PeoHi方法;子类Student,包括StadyNum和一个PeoHi方法.

C# 中虚方法和抽象方法

定义子类Teacher(Student子类 与Teacher定义方法相同,这里不在介绍)

C# 中虚方法和抽象方法

在Main函数里输出

C# 中虚方法和抽象方法

输出结果

C# 中虚方法和抽象方法

抽象方法,定义一个父类Person,和子类Chinese

C# 中虚方法和抽象方法

C# 中虚方法和抽象方法

推荐教程:《C#》

以上就是C# 中虚方法和抽象方法的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2433170.html

(0)
上一篇 2025年3月3日 09:21:26
下一篇 2025年2月18日 10:07:15

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • C++隐式类型转换是什么?

    C++中隐式类型转换是指:从“构造函数形参类型”到“该类类型”的一个编译器的自动转换。隐式类类型转换是会带来风险的,隐式转换得到类的临时变量,完成操作后就消失了,我们构造了一个完成测试后被丢弃的对象。 C++ 隐式类类型转换 《C++ Pr…

    2025年3月3日
    200
  • C语言中for语句的执行过程是什么?

    C语言中for语句的执行过程是:1、会先判断条件表达式是否成立,如果条件成立则执行中间循环体,执行完中间循环体后接着执行末尾循环体 ;2、在执行完末尾循环体后对条件表达式再次判断,若条件还成立,则继续重复中间循环体,当条件不成立时则跳出。 …

    2025年3月3日
    200
  • c语言中switch的用法是什么?

    c语言中switch的用法是:1、switch后面括弧内的【表达式】,ANSI标准允许它为任何类型;2、当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,否则,就执行default后面的语句。 c语言中sw…

    2025年3月3日
    200
  • c++数组初始化的种类有哪些

    c++kquote>c++数组初始化的种类有:1、整型数组的初始化;2、字符串的初始化;3、数组的默认初始化;4、数组的堆初始化。 c++数组初始化的种类有: 1、整型数组的初始化-栈初始化 //默认初始化int a[5] = {};…

    2025年3月3日
    200
  • c++ vector用法是什么

    c++kquote>c++ vector用法是:1、创建vector对象;2、尾部插入数字;3、使用下标访问元素;4、使用迭代器访问元素;5、插入元素;6、)删除元素等等。 在c++中,vector是一个十分有用的容器,c++ vec…

    2025年3月3日
    200
  • c++引用和指针的区别是什么?

    区别:1、指针有自己的一块空间,而引用只是一个别名;2、指针在使用中可以指向其它对象,但是引用只能是一个对象的引用,不能被改变;3、指针可以有多级指针(例**p),而引用至于一级;4、指针和引用使用“++”运算符的意义不一样。 相关推荐:C…

    2025年3月3日
    200
  • vc++和c++之间有什么区别?

    c++kquote>区别:C++是一门编程语言,是全球统一使用的语法标准;而VC++是微软公司的免费C++开发工具,具有集成开发环境,程序员可以在VC++中编写源代码文本,编译打包成CPU可执行的机器程序。 vc++一般指Micros…

    2025年3月3日
    200
  • c++中=和==的区别有哪些?

    c++kquote>区别:1、“=”是赋值的意思,是赋值运算符;而“==”是相等运算符,用于判断两边是否相等;2、“=”运算符存在强制类型转换,而“==”不存在强制转换。 c++中=和==的区别 1、含义不同: “=”是赋值的意思。 …

    2025年3月3日
    200
  • C++运算符中不能重载的是哪些

    C++运算符中不能重载的有:1、条件运算符“?:”;2、成员访问运算符“.”;3、域运算符“::”;4、长度运算符“sizeof”;5、成员指针访问运算符“->*”和“.*” 。 相关推荐:《C++视频教程》 重载:让操作符可以有新的…

    2025年3月3日
    200
  • c++中头文件和源文件的区别是什么

    区别:头文件是“.h”文件,提供接口;源文件是“.cpp”文件,提供实现。编译器规定源文件必须包含函数入口,即main函数;而头文件不得包含函数入口,头文件不可以单独编译成一个程序,仅仅包含程序片段或者定义常,变量。 本文操作环境:Wind…

    2025年3月3日
    200

发表回复

登录后才能评论