java接口相关习题

interface Graphics
{  //接口里面只能用抽象方法
  public abstract double area();
    }
//设置 平面类
class PlaneGraphics1
{
    private String shape; //形状
    //构造方法,有参数
    public PlaneGraphics1(String shape)
    {
        this.shape=shape;
    }
    //无参数
    public PlaneGraphics1()
    {
        this("未知图形1");
    }
    //打印
    public void print()
    {
        
    }
    
    }
//长方形 ,继承接口必要实现接口的抽象方法,不然会报错的。
class Rectangle extends PlaneGraphics1 implements Graphics
{
    protected  double length;
    protected double width;
    //构造方法
    public Rectangle(double length,double width)
    {
        this.length=length;
        this.width=width;
    }
    //正方形构造方法
    public Rectangle(double width)
    {
        this.length=width;
        this.width=width;
    }
    //无参数构造方法
    public Rectangle()
    {
        
    }
    public   double area()
    {
        return width*length;
    }
    public void print()
    {
        System.out.println("长方形面积为:"+this.area());
    }
    
    }
//椭圆
class Eclipse extends PlaneGraphics1 implements Graphics
{
    protected  double radius_a;
    protected double radius_b;
    //椭圆构造方法
    public Eclipse(double radius_a,double radius_b)
    {  
        super("椭圆");
        this.radius_a=radius_a;
        this.radius_b=radius_b;
        
    }
    //圆
    public Eclipse(double radius_a)
    {
        super("圆");
        this.radius_a=radius_a;
        this.radius_b=radius_a;
    }
    public Eclipse()
    {
        
    }
     public double area()
     {
         return Math.PI*radius_a*radius_b;
     }
     public void print()
     {
         System.out.println("圆的面积为"+this.area());
     }
    }

class Triangle extends PlaneGraphics1 implements Graphics
{
    private double bottom ;
    private double height;
    public Triangle(double bottom ,double height)
    {
        this.bottom=bottom;
        this.height=height;
    }
    public double area()
    {
        return bottom*height/2;
    }
    public void print()
    {
        System.out.println("三角形面积为:"+this.area());
    }
    }
public class PlaneGraphics_ex1 {
    public static void main(String[]args)
    {     
        PlaneGraphics1 g=new Rectangle(10.0,20.0);
        g.print();
        g=new Eclipse(10.0,12.0);
        g.print();
        g=new Triangle(10.0,6.0);
        g.print();
    }

}

java接口相关例题的更多相关文章

  1. Java——接口相关知识

    1.接口用interface来声明 //定义一个动物接口 public interface Animal{ public void eat(); public void travel(); } 2.接 ...

  2. java之接口相关知识

    1.接口用interface来声明 //定义一个动物接口 public interface Animal{ public void eat(); public void travel(); } 2.接 ...

  3. java接口调用——webservice就是一个RPC而已

    很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法.就是本地方法调用的升级版而已,我明天会上一篇如何通过 ...

  4. 规则引擎集成接口(八)Java接口实例

    接口实例 右键点击“对象库” —“添加接口实例”,如下图: 弹出如下窗体: 输入接口的参数信息: 点击接口“求和”,选择选项卡“求和操作”,点击添加图标   ,如下: 弹出如下窗体,勾选方法“coun ...

  5. python面向对象进阶 反射 单例模式 以及python实现类似java接口功能

    本篇将详细介绍Python 类的成员.成员修饰符.类的特殊成员. 类的成员 类的成员可以分为三大类:字段.方法和特性. 注:所有成员中,只有普通字段的内容保存对象中,即:根据此类创建了多少对象,在内存 ...

  6. Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6642463 在前面几篇文章中,我们详细介绍了A ...

  7. Java:接口继承接口 (多继承机制)

    在看API文档时,突然发现一个接口可以是其他接口的子接口,这说明接口之间会存在继承的关系.查找了相关的资料,做一个总结. 是继承还是实现 首先要搞清楚接口之间的关系使用的关键字是extends还是im ...

  8. java线程相关

    java线程相关 java 线程 1 线程的状态 This is an example of UML protocol state machine diagram showing thread sta ...

  9. php--php调java接口验签

    <?php namespace Fmall_cloud\Model; use Think\Model; class DealJavaModel extends Model { /** * @ti ...

随机推荐

  1. (转载)delphi 把图片存入数据库

    delphi 把图片存入数据库 procedure TForm1.Button1Click(Sender: TObject); // 插入图片过程var Stream:TMemoryStream;be ...

  2. [python][flask][flask-SQLAlchemy]关于flask-SQLAlchemy的初级使用教程

    鉴于网上关于flask-SQLAlchemy的实例使用教程参差不齐,于此写下工作学习过程中的使用过程,以便分享交流. 对于python关于flask有一定了解的高端玩家来说,请转至flask官方开发文 ...

  3. How to get Directory size in IsolatedStorage of Windows Phone 8 App

    There is no API to get the total size of a specific directory in the isolated storage. Therefore, th ...

  4. BestCoder Round #67 (div.2) N*M bulbs

    问题描述 N*M个灯泡排成一片,也就是排成一个N*M的矩形,有些开着,有些关着,为了节约用电,你要关上所有灯,但是你又很懒. 刚好有个熊孩纸路过,他刚好要从左上角的灯泡走去右下角的灯泡,然后离开. 但 ...

  5. 自设chrome默认滚动条样式

    今天无聊,想着chrome这种全面使用html的浏览器,可不可以让我自行改变它的默认CSS呢,结果去查查,有,很好 win7/8目录为 C:\Users\[你的用户名]\AppData\Local\G ...

  6. MINA源码分析

    IoService通过构造函数的形式成为了IoSession一部分,IoSession是通过IoAcceptor以及connector创建出来,这二者其实就是IoService,所以对于IoSessi ...

  7. android中LayoutInflater详解与使用

    android的LayoutInflater用来得到一个布局文件,也就是xxx.xml,而我们常用的findviewbyid是用来取得布局文件里的控件或都布局.inflater即为填充的意思,也就是说 ...

  8. MOSFET管应用总结

    /* *本文转载自互联网,仅供个人学习之用,请勿用于商业用途. */ 在使用MOS管设计开关电源或者马达驱动电路的时候,大部分人都会考虑MOS的导通电阻,最大电压等,最大电流等,也有很多人仅仅考虑这些 ...

  9. 【技术贴】Eclipse 右键打开当前文件所在文件夹

    1.使用插件,百度:OpenExplorer_1.5.0.v201108051513.jar 2.默认情况下使用eclipse打开当前文件所在文件夹很麻烦,需要右键点击 Package Explore ...

  10. 在openshift上自定义node.js的版本

    https://github.com/ramr/nodejs-custom-version-openshift 由于是线上服务器,一步一步来: 先把上面的工程拉下来,覆盖到初始化的工程里,提交,让服务 ...