C#虚方法的声明和使用实例教程
作者:shichen2014 发布时间:2022-09-26 16:07:55
标签:C#,虚方法,声明,使用
本文以实例形式演示了C#虚方法的声明与使用。实例内容主要包括:演示虚方法的声明和使用,定义虚方法进而求几何面积,用虚方法求原始图形的面积、正方形的面积、等边三角形的面积、圆形的面积等。
实现代码如下:
using System;
public class Graph
{
protected double ParaVal;
protected double pi = 3.1415926;
public Graph ( double Para )
{
ParaVal = Para;
}
//定义虚方法:求面积
public virtual double Area( )
{
return ParaVal;
}
}
//图形的子类正方形
public class Square : Graph
{
public Square( double Para ) : base ( Para )
{
}
//重载正方形求面积的方法
public override double Area( )
{
return ParaVal * ParaVal;
}
}
//图形的子类等边三角形
public class EqTriangle : Graph
{
public EqTriangle( double Para ) : base ( Para )
{
}
//重载等边三角形求面积的方法
public override double Area()
{
return ParaVal * ParaVal * Math.Sin( pi/3 ) / 2;
}
}
//图形的子类圆
public class Circle : Graph
{
public Circle( double Para ) : base( Para )
{
}
//重载圆求面积的方法
public override double Area( )
{
return pi * ParaVal * ParaVal;
}
}
class Test
{
public static void Main( )
{
double Length = 6;
Graph Init = new Graph( Length );
Graph Squa = new Square( Length );
Graph Tria = new EqTriangle( Length );
Graph Circ = new Circle( Length );
Console.WriteLine("原始图形的面积是:\t{0}", Init.Area());
Console.WriteLine("正方形的面积是:\t{0}", Squa.Area());
Console.WriteLine("等边三角形的面积是:\t{0}", Tria.Area());
Console.WriteLine("圆形的面积是: \t{0}", Circ.Area());
}
}
0
投稿
猜你喜欢
- 查询文档 & 基本操作为了方便学习, 本节中所有示例沿用上节的索引按照ID单个GET class_1/_doc/1查询结果:{ &n
- 微信公众号,仿照企业号的思路,增加了标签管理的功能,对关注的粉丝可以设置标签管理,实现更加方便的分组管理功能。开发者可以使用用户标签管理的相
- 本文实例讲述了Java实现求数组最长子序列算法。分享给大家供大家参考,具体如下:问题:给定一个长度为N的数组,找出一个最长的单调自增子序列(
- java8分组计算数量和计算总数package com.pig4cloud.pigx.admin.api.vo;import lombok.
- 一、概述本文描述采用C#语言访问控制Tektronix TBS 2000B 系列示波器。接口协议采用NI-VISA。最近一个项目需要和一款示
- Java面向对象之猜拳游戏,供大家参考,具体内容如下1 要求与电脑进行猜拳并记录分数。2 Computer.java 源代码(电脑自动随机出
- 目录1、简介2、适用情况3、mybatis-plus前期准备(工程将以 H2 作为默认数据库进行演示)1、使用 Spring Initial
- 这篇文章主要介绍了springboot配置aop切面日志打印过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习
- 本文实例讲述了C#生成随机数功能。分享给大家供大家参考,具体如下:using System;using System.Collections
- AssertJ是我目前见过的最强大的断言api,没有之一。官网传送门为什么使用assertJ?1、流式断言,代码即用例,直观易懂。举个例子:
- 在做在线编程题目的时候,需要了解一下数据的输入格式。这样可以对数据处理有比较好的把握,不需要把太多的时间放在这个上面,注重主要的算法逻辑即可
- 开门见山在IT圈里,每当我们谈论并发时,必定会说起在一台计算机上同时运行的一系列线程。如果这台电脑上有多个处理器或者是一个多核处理器,那么这
- 本文实例讲述了Android编程实现图片放大缩小功能ZoomControls控件用法。分享给大家供大家参考,具体如下:MainActivit
- 题外由于idea原因 用注解test无法在控制台上输入所以写死到程序里了,版本都30.9102了为什么还是这样啊,intelJ你们该反思了!
- 示例 1 :使用搜索表单创建全屏模式我们要构建的小应用程序有一个应用程序栏,右侧有一个搜索按钮。按下此按钮时,将出现一个全屏模式对话框。它不
- 简介在之前spring boot3文章中我们介绍了,spring boot3的一个重要特性就是支持把spring boot3的应用编译成为G
- 一、需要自定义登录结果的场景在我之前的文章中,做过登录验证流程的源码解析。其中比较重要的就是当我们登录成功的时候,是由Authenticat
- 前言一般生成的PDF文档默认的文档底色为白色,我们可以通过一定方法来更改文档的背景色,以达到文档美化以及保护双眼的作用。 以下内容提供了Ja
- 自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一
- 本文实例讲述了C#图像边缘检测(Roberts)的方法。分享给大家供大家参考。具体如下://定义roberts算子函数private sta