回 帖 发 新 帖 刷新版面

主题:[讨论]C#编程题

题目: 
声明一个抽象类Shape 
    有一个包含两个整型参数的整型函数 
    有两个整型的读写属性 
试分别用一个矩形类和一个三角形类来实现这个抽象类 
    使整型函数用于求面积 
    两个属性分别表示矩形的长和宽、三角形的底和高 
在Test类的Main函数中生成两个类的实例验证之。
下面是我写的 我不会写  test类的main函数!!!怎么验证?  
*********************
using System;

namespace _06509323shape
{
    /// <summary>
    /// shape 的摘要说明。
    /// </summary>
    abstract public class shape
    {
        public shape()
        {
            //
            // TODO: 在此处添加构造函数逻辑
            //
        }
        abstract public int area(int width,int height);//定义一个包含两个整形参数的整型函数
        //定义两个整型的读写属性
        public abstract int Width{get;set;}
        public abstract int Height{get;set;}
    }
    public class rect:shape//矩形类
    {
        int _width,_height;//定义长和高
        public override int area(int width,ing height)
        {
            return width*height ;
        }//重新写面积
        public override int width
        {
            get {return _width;}
            set{_width=value;}
        }//设置或者获取矩形的宽    

        public override int height
        {
            get {return _height;}
            set{_height=value;}
        }//设置或者获取矩形的高
     }
    public class tria:shape
    {
        int _width,_height;//定义底和高
        public override int area(int width,int height)
        {
            return width*height/2;
        }
        public override int width
        {
            get{return _width;}
            set{_width=value;}
        }
        public override int height 
        {
            get{return _height;}
            set{_height=value;}
        }

    }


    
}

********************

回复列表 (共2个回复)

沙发


写的好啊

板凳

你要测试的话,可以利用现有的子类
毕竟抽象类不能直接实例化

比如测试area方法,你可以直接实例化rect类,然后调用其area方法即可
用这种思路测试抽象类或者抽象的成员

我来回复

您尚未登录,请登录后再回复。点此登录或注册