c#基类继承
【 塔 · 第 三 条 约 定 】
编写一个多边形作为基类(成员:定点数)抽象方法(子类实现):体积、边长
- 正三角形类:成员 边长
- 长方形类:成员 长宽
using System;
using System.Collections.Generic;
using System.Text;
namespace 第三条约定
{
abstract class Base
{
public static int point;//定点数
public static double area;//面积
}
class regular_triangle : Base//定义正三角形类
{
public void input()
{
Console.WriteLine("请输入正三角形定点数:");
point = Convert.ToInt32(Console.ReadLine());//获取定点数
if (point != 3)
{
Console.WriteLine("这不是一个三角形");
}
}
int length;//私有成员 边长
public void _regular_triangle()
{
Console.WriteLine("请输入正三角形的边长");
length = Convert.ToInt32(Console.ReadLine()); ;//获取边长
area = 0.433 * (length * length);
}
public void output()
{
Console.WriteLine("边长:{0}", length);//输出私有成员边长
Console.WriteLine("正三角形的面积是:{0}", area);
}
}
class orthogon : Base//定义矩形类
{
int length;//私有成员 长
int width;//私有成员 宽
public void input()
{
Console.WriteLine("请输入矩形的定点数:");
point = Convert.ToInt32(Console.ReadLine());//获取定点数
if (point != 4)
{
Console.WriteLine("这不是一个矩形");
}
}
public void _orthogon()
{
Console.WriteLine("请输入矩形的长与宽");
length = Convert.ToInt32(Console.ReadLine());//获取长
width = Convert.ToInt32(Console.ReadLine());//获取宽
area = (length * width);
}
public void output()
{
Console.WriteLine("长:{0},宽:{1}", length, width);//输出私有成员长与宽
Console.WriteLine("矩形的面积是:{0}",area);
}
}
}
class Program
{
static void Main(string[] args)
{
第三条约定.regular_triangle a = new 第三条约定.regular_triangle();
a.input();
a._regular_triangle();
a.output();//输出形状与面积
第三条约定.orthogon b = new 第三条约定.orthogon();
b.input();
b._orthogon();
b.output();//输出形状与面积
Console.ReadKey();
}
public static int point { get; set; }
}
遇到的问题
- 在调试的时候程序没有Console.ReadKey();导致调试时没有等待输入,窗口闪退的情况
- 还有题目理解不明,继承还是有点不明白。

c#基类继承的更多相关文章
- PythonI/O进阶学习笔记_4.自定义序列类(序列基类继承关系/可切片对象/推导式)
前言: 本文代码基于python3 Content: 1.python中的序列类分类 2. python序列中abc基类继承关系 3. 由list的extend等方法来看序列类的一些特定方法 4. l ...
- javascript组件开发之基类继承实现
上一篇文章大概的介绍了一下关于javascript组件的开发方式,这篇文章主要详细记一下基类的编写,这个基类主要是实现继承的功能 为什么要封装基类? 由于这次重构项目需要对各种组件进行封装,并且这些组 ...
- C#虚基类继承与接口的区别
类:定义新的数据类型以及这些新的数据类型进行相互操作的方法 定义方式: class Cat { } class Cat:object { } C#中所有的类都是默认由object类派生来的,显示指定或 ...
- 【C++】继承(虚基类)
类的继承与派生 面向对象技术强调软件的可重用性,这种重用性通过继承机制来实现.而在类的继承过程中,被重用的原有类称为基类,新创建的类称为派生类.派生类定义语法格式如下: class <派生类名& ...
- lua中基类和“继承机制”
基类:基类定义了所有对于派生类来说普通的属性和方法,派生类从基类继承所需的属性和方法,且在派生类中增加新的属性和方法. 继承:继承是C++语言的一种重要机制,它允许在已定义的类的基础上产生新类. lu ...
- 不可或缺 Windows Native (21) - C++: 继承, 组合, 派生类的构造函数和析构函数, 基类与派生类的转换, 子对象的实例化, 基类成员的隐藏(派生类成员覆盖基类成员)
[源码下载] 不可或缺 Windows Native (21) - C++: 继承, 组合, 派生类的构造函数和析构函数, 基类与派生类的转换, 子对象的实例化, 基类成员的隐藏(派生类成员覆盖基类成 ...
- C++ (P160—)多继承 二义性 虚基类 “向上转型”
1 多继承中,必须给每个基类指定一种派生类型,如果缺省,相应的基类则取私有派生类型,而不是和前一个基类取相同的派生类型 2 一个类的保护成员只能被本类的成员函数或者它的派生类成员函数访问 3 由于c+ ...
- C++学习之路—继承与派生(一):基本概念与基类成员的访问属性
(本文根据<c++程序设计>(谭浩强)总结而成,整理者:华科小涛@http://www.cnblogs.com/hust-ghtao,转载请注明) 1 基本思想与概念 在传统的程序设计 ...
- ASP.NET MVC项目实现BasePage基类用作ASPX.CS网页继承
在ASP.NET MVC项目开发,还是需要创建一些Web Page来实现一些功能,如呈现报表等... 但是一旦项目的.ASPX网页太多了,其中的程序代码也会有代码冗余,出现这些情况,我们得需要对这些代 ...
随机推荐
- javascript最常用的对象创建方式
//第一种 function Demo(){ var obj=new Object(); obj.name="Yubaba"; obj.age=12; obj.firstF=fun ...
- react-router-dom和本地服务本地开发 (node、webpack)
场景 使用react 做开发,避免会使用react-router React Router 已经是V4的版本 React Router 目前已经被划分成了三个包:react-router,react- ...
- Webstorm新建vue类型文件设置
今天安装了Node.js,配置了vue需要的框架,发现原有的wenstorm新建文件的时候没有vue文件选项,因此,学习了一下webstorm如何配置创建vue文件 具体过程如下: 第一步,打开web ...
- vue实现多级弹窗
webpack + vue 实现 弹窗功能 对于刚入门webpack + vue 不久的新人来说,这技术,确实有些不太友好,相比较于直接操纵dom元素的jQuery,直接操纵数据的 vue 在webp ...
- Git命令行和Xcode结合使用(我来告诉你这行代码谁写的)
现在一直使用Git来管理代码,对于有强迫症的我来说,依旧选择了命令行,下面这段话可以更好的解释我为什么喜欢使用终端敲命令. There are a lot of different ways to u ...
- Python 爬虫 (五)
# 头条街拍图片爬取 1 import re import requests from urllib import request import json import os i = 0 header ...
- ...续上文(一个小萌新的C语言之旅)
我们继续上次没介绍完的继续讲: 下面我们说一下二进制,二进制是计算技术中广泛采用的一种 数制. 二进制数据是用0和1两个 数码来表示的数.它的基数为2,进位规则是“逢二进一”.那么二进制怎么转化为十进 ...
- (数据科学学习手札41)folium基础内容介绍
一.简介 folium是js上著名的地理信息可视化库leaflet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm ...
- WPF 自定义ProgressBar滚动条样式
一.前言 滚动条一般用于加载进度,我们在看视频的时候或者在浏览网页的时候经常能看到加载进度的页面.在程序开发中,默认的进度加载样式可能跟程序风格不太一样,或者加载进度的时候需要更改一下加载的样式.这个 ...
- 北京Uber优步司机奖励政策(1月5日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...