定义一个抽象类Shape,成员有图形名称(name)和求面积的抽象方法Area()
来源:互联网 发布:java银联支付接口开发 编辑:程序博客网 时间:2024/05/20 05:29
定义一个抽象类Shape,成员有图形名称(name)和求面积的抽象方法Area(),利用继承产生子类三角形类Trangle类,圆Circle类,矩形Rectangle类。并分别实现计算面积的方法计算相应图形的面积。对于Trangle类要求能够实现修改三边,判断三边是否能够构成三角形,根据三边长计算面积的方法。
- abstract class shape
- {
- String name;
- abstract void Area();
- }
- class Trangle extends shape //三角形类
- { Trangle(){}
- double sideA,sideB,sideC;
- boolean boo;
- public Trangle(double a,double b,double c)
- {
- sideA=a;sideB=b;sideC=c;
- this.name="三角形";
- if(a+b>c&&a+c>b&&b+c>a)
- {
- System.out.println("我是一个三角形");
- boo=true;
- }
- else
- {
- System.out.println("我不是一个三角形");
- boo=false;
- }
- }
- public void Area()
- {
- if(boo)
- {
- double p=(sideA+sideB+sideC)/2.0;
- double area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
- System.out.println(name+"面积是:"+area);
- }
- else
- {
- System.out.println("不是一个三角形,不能计算面积");
- }
- }
- public void 修改三边(double a,double b,double c)
- {
- sideA=a;sideB=b;sideC=c;
- if(a+b>c&&a+c>b&&b+c>a)
- {
- boo=true;
- }
- else
- {
- boo=false;
- }
- }
- }
- class Circle extends shape //圆类
- {
- double r;
- Circle(double r)
- {
- this.r=r;this.name="圆";
- }
- public void Area()
- {
- System.out.println(name+"面积是:"+3.14*r*r);
- }
- }
- class Rectangle extends shape //矩形类
- {
- double a,b;
- Rectangle(double a,double b)
- {
- this.a=a;this.b=b;this.name="矩形";
- }
- public void Area()
- {
- System.out.println(name+"面积是:"+a*b);
- }
- }
- class 图形1
- {
- public static void main(String[] args)
- {
- Trangle t=new Trangle(1,2,3);
- t.Area();
- t.修改三边(3,4,5);
- t.Area();
- Circle c=new Circle(2);
- c.Area();
- Rectangle r=new Rectangle(4,5);
- r.Area();
- }
- }
对于上题目中的Shape类,改用接口来实现同样的功能
- interface shape
- {
- final String name="图形";
- void Area();
- }
- class Trangle implements shape
- {
- Trangle(){}
- double sideA,sideB,sideC;
- boolean boo;
- public Trangle(double a,double b,double c)
- {
- sideA=a;sideB=b;sideC=c;
- if(a+b>c&&a+c>b&&b+c>a)
- {
- System.out.println("我是一个三角形");
- boo=true;
- }
- else
- {
- System.out.println("我不是一个三角形");
- boo=false;
- }
- }
- public void Area()
- {
- if(boo)
- {
- double p=(sideA+sideB+sideC)/2.0;
- double area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
- System.out.println(name+"面积:"+area);
- }
- else
- {
- System.out.println("不是一个三角形,不能计算面积");
- }
- }
- public void 修改三边(double a,double b,double c)
- {
- sideA=a;sideB=b;sideC=c;
- if(a+b>c&&a+c>b&&b+c>a)
- {
- boo=true;
- }
- else
- {
- boo=false;
- }
- }
- }
- class Circle implements shape //圆类
- {
- double r;
- Circle(double r)
- {
- this.r=r;
- }
- public void Area()
- {
- System.out.println(name+"面积是:"+3.14*r*r);
- }
- }
- class Rectangle implements shape //矩形类
- {
- double a,b;
- Rectangle(double a,double b)
- {
- this.a=a;this.b=b;
- }
- public void Area()
- {
- System.out.println(name+"面积是:"+a*b);
- }
- }
- class A
- {
- public void t(shape s) //接口类型参数
- {
- s.Area(); //接口回调
- }
- }
- class 图形2
- {
- public static void main(String[] args)
- {
- shape s;
- s=new Trangle(3,4,5);
- s.Area() ; //接口回调
- A a=new A();
- a.t(new Circle(2));
- a.t(new Rectangle(3,4));
- }
- }
- 定义一个抽象类Shape,成员有图形名称(name)和求面积的抽象方法Area()
- 7.设计一个抽象类Shape, 属性为x和y,表示圆心坐标,计算面积的抽象方法double area(),并设计一个计算圆心距离坐标原点距离的方法distance(double x ,double y
- 定义一个Shape抽象类,在此基础上派生出Rectangle和Circle,二者都有GetArea()函数计算对象的面积,GetPerim()函数计算对象的周长
- 4.1(抽象类)1)定义shape抽象类,包含求面积和求周长的方法;2)定义Circle类和Rectangle类继承shape类;3)定义Square类继承Rectangle类;4)运行时,让用户
- 已知一个抽象类Shapge,该类中有一个方法GetArea。 要求定义一个Rectangle类,继承Shape类,实现GetArea方法计算矩形面积。
- 一个抽象类Shape 里边有两个抽象方法 计算面积 和 周长; Shape由三角形和圆形继承,利用多态的特性设计完成不同子类的功能
- 定义一个长方形类并将求周长和求面积定义为成员方法实现求周长和面积的动能(要求键盘录入长和宽)
- Shape是一个几何图形的基类,它至少有求自身周长函数Circumference()和求自身面积函数Area()。从Shape类派生出Circle类、Ellipse类、Triangle类和Rectan
- 写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的main()函数,求出定义的几个几何体的面积和。
- 写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的main()函数,求出定义的几个几何体的面积和
- 用抽象类设计计算二维图形面积的程序,在基类TDshape中设计纯虚函数area()和printName().are()用于计算图形的几何面积,printName()用于打印输出几何图形的类名
- Chapter12——声明抽象基类Shape,由它派生出3个派生类:Circle,Rectangle,Triangle,用一个printArea函数分别输出以上三者的面积,3个图形的数据在定义对象时给
- 13.3 抽象基类 Shape 的派生(平面图形)
- 5.1(接口)1)定义shape接口,包含求面积和求周长的方法;2)定义Circle类、Rectangle类、Square类;
- 抽象类和抽象方法的定义和使用
- 抽象类练习(求面积和周长)
- 抽象类和抽象方法---求体积
- 编写一个程序定义抽象类有他派生五个派生类 圆 正方形 矩形 梯形 三角形用函数分别求面积 总面积 要求用基类指针数组
- 用java编写 Fibonacci
- java 最大公约数 最小公倍数 用函数实现
- 组合数快速求解
- 编写一个异常类MyException,再编写一个类Student,该类有一个产生异常的方法oid speak(
- ASP.NET-----------DataList 的小方法
- 定义一个抽象类Shape,成员有图形名称(name)和求面积的抽象方法Area()
- linux 压缩通用iso格式文件
- 该说什么呢
- a
- UltraISO制作U盘启动Ubuntu 8.10 LiveCD
- 简单笔记(一)
- 我的5次面试经历
- 第一次写
- List<T>的搜索和排序