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. 【javascript 引用类型(一)】

    javascript 的引用类型大致分为:Object 类型.Array 类型.Date 类型.RegExp 类型.Function 类型.基本包装类型和单体内置对象.这里我们着重介绍 Object ...

  2. C语言-06复杂数据类型-02字符串

    #include <stdio.h> int main() { //char name[] = {'i', 't', 'c', 'H', 's', 't', '\0'}; char nam ...

  3. C,C++,使得控制台的黑框框全屏显示

    有时候C,C++运行的结果有比较多的数据,或者大一新生要做个学生管理系统界面时,运行C,C++出来的黑框框控制台,是不是觉得很小?下面是一个全屏的函数,只要在主函数中第一行调用它,就可以了.然后其他基 ...

  4. Razor引擎总结

    1.显示格式化小数:@(string.Format("{0:0.00}",ViewData["TradeAmount"].ToNullString()))

  5. Quartz2D 备忘 + 学习

    Quartz2D Quartz2D是支持iOS和Mac系统的二维绘制引擎,它可以绘制: 绘制图形(图形,线条,圆等) 绘制文字 绘制/生成图片 读取/生成PDF 截图 Quartz2D主要功能就是以画 ...

  6. APNs-远程推送

    一.开发iOS程序的推送功能, iOS端需要做的事 1.请求苹果获得deviceToken 2.得到苹果返回的deviceToken 3.发送deviceToken给公司的服务器 4.监听用户对通知的 ...

  7. Uva10766 Organising the Organisation

    题目链接戳这里 基尔霍夫矩阵裸题.构建基尔霍夫矩阵(度数矩阵-邻接矩阵),求他的任意\(n-1\)阶主子式的绝对值即为答案. 这题开始用java写,结果BigInteger太慢Tle了. 后来用c++ ...

  8. how to develop mobile web

    http://blog.templatemonster.com/2010/05/11/how-make-mobile-website-6-easy-tips/ http://mobile.smashi ...

  9. Python 全栈开发 -- 监控篇

    如果你已经玩转了 Python 编程语言语法,肯定想用这些知识,开发一款应用程序,它可以是在网上,可以炫耀或出售,那就需要全栈式开发 Python.具体如何创建,部署和运行生产 Python Web ...

  10. 使用HttpURLConnection向服务器发送post和get请求

    一.使用HttpURLConnection向服务器发送get请求 1.向服务器发送get请求 @Test publicvoid sendSms() throws Exception{ String m ...