前言:
此时兄弟们对“java编写一个圆类circle含有double”都比较珍视,小伙伴们都需要学习一些“java编写一个圆类circle含有double”的相关内容。那么小编也在网络上汇集了一些对于“java编写一个圆类circle含有double””的相关内容,希望各位老铁们能喜欢,同学们一起来学习一下吧!通过自定义的抽象类来计算圆形的面积。计算圆形面积时需要用到PI,在C#中使用math.pi常量字段来表示,它的值为3.14159265358979323846。
那么什么是抽象类?
如果一个类不与具体的事物相联系,而只是表达一种抽象的概念,仅是作为其派生类的一个基类,这样的类就是抽象类。在抽象类中声明方法时,如果加上abstract关键字,则为抽象方法。
抽象类主要用来提供多个派生类可共享的基类的公共定义。它与非抽象类的主要区别有:1、抽象类不能直接实例化
2、抽象类中可以包含抽象成员,但是非抽象类中不可以包含抽象成员
3、抽象类不能被密封,在C#中声明抽象类时需要使用abstract关键字。声明抽象类时,除abstract关键字,Class关键字和类名外,其他的都是可选项。
程序界面:
程序代码:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication1{ public partial class AbstractArea : Form { public AbstractArea() { InitializeComponent(); } /// <summary> /// 定义一个抽象类,表示圆形结构,抽象类中有一个抽象方法,这个抽象方法并没有实体代码 /// </summary> public abstract class circle { public double r;//定义圆形半径字段 public double R//定义圆形半径属性(可读写) { get { return r; } set { r=value; } } public abstract double Area();//声明计算面积的抽象方法,该方法需要在派生类中具体实现 } /// <summary> /// 声明派生类,继承基类中的成员和方法,并重写基类中的抽象方法实现计算圆形面积 /// </summary> public class area : circle { public override double Area()//重写基类中的方法 { return Math.PI * R * R;//计算面积 } } /// <summary> /// 通过按钮计算圆形面积 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { area mj = new area();//实例化派生类 mj.R = double.Parse(tex_r.Text.ToString());//为半径属性赋值 tex_result.Text = mj.Area().ToString();//进行面积计算并转换为字符串 } }}结语:
抽象类和接口的区别主要有以下几点:
1、抽象类的派生类只能继承一个基类,也就是只能直接继承一个抽象类,但可以继承任意多个接口。
2、抽象类中,可以定义成员的实现,但接口中不可以
3、抽象类中可以包含字段、构造函数、析构函数、静态成员或常量等,接口中不可以
4、抽象类中的成员可以是私有的,只要他们不是抽象的、受保护的内部成员,只能在应用程序的代码或派生类中访问,但接口中的成员必须是公共的。
喜欢的请关注、收藏、转发!
标签: #java编写一个圆类circle含有double #c语言求圆的面积和周长代码 #求圆的面积程序编写 #用程序编写圆的面积 #编写一个程序求圆的面积