实验6 接口与多态


    实验6 接口态
    *** 17信2班 1720501234
    实验目
    1掌握接口定义实现
    2掌握类态性
    二预容
    1什接口接口中包含容实现接口
    接口方法特征集合
    包含方法常量
    类中实现接口关键字implements基格式:
    [修饰符] class <类名> [extends 父类名] [implements 接口列表]{
    }
    2              填相关容
    三实验容
    1定义ShapeIF接口包括常量PI(圆周率)求面积方法s()求周长方法l()建立圆类(C)矩形类(R)实现ShapeIF接口建立运行类ShapeRun类运行CR
    提示代码
    接口ShapeIF
    public interface ShapeIF {
    double PI31416
    public double S()
      public double L()
    }
    形状类Shape
    public class Shape {
    private double x
    private double y
    public Shape()
    { x0y0}
    public  Shape(double xdouble y)
    { thisxxthisyy }
    public double getX()
    { return x }
    public void  setX(double x)
    { thisxx }
    public double getY()
    { return y }
    public void  setY(double y)
    { thisyy }
    public double distance(double xdouble y)
    { return Mathsqrt((thisxx)*(thisxx)+(thisyy)*(thisyy)) }
    }
     
    圆类C
    public class C extends Shape implements     ShapeIF            {
    private double r
    public C(){ super()  r0 }
    public C(double r){super() thisrr}
    public C(double xdouble ydouble r){super(xy) thisrr}

    public double S(){
    return PI*r*r
    }l
     Public double L(){               
       return 2* ShapeIF PI*r                                       
                                              
    }
    矩形类R
    public class R extends Shape implements      ShapeIF             {
    private double a长
    private double b宽
    构造方法
    R()
    { super()a0b0 }
    R(double newAdouble newB)
    { super()anewA bnewB }
    R(double newXdouble newYdouble newAdouble newB)
    { super(newXnewY)anewA bnewB }
    成员方法  
     Public double S(){                                         
      return a*b                                         
      }                                        
     
        Public double L(){                                          
        return 2*a+2*b                                      
                                              
    }
     
    运行类ShapeRun
    public class ShapeRun {
    public static void main(String args[])
    {
    R r1
    C c1
    r1new R(22810)
    Systemoutprintln(r1S())
    Systemoutprintln(r1L())

    c1new C(125)

    Systemoutprintln(c1S())
    Systemoutprintln(c1L())
    }
    }
     
    2请设计接口ShapeIF(题)DistanceIFDistanceIF包括两方法方法D(double xdouble y)求点(xy)该Shape中心距离方法DD(double xdouble y)求点(xy)图形位置关系建立圆类(CC)实现ShapeIF接口DistanceIF接口建立运行类ShapeRun1类运行CC
    提示代码
    接口ShapeIF(题)
    父类Shape(题)
    接口DistanceIF
    Public  interface     DistanceIF {
    double D(double xdouble y)
    double DD(double xdouble y)
    }
     
    圆类CC
    public class CC extends Shape implements     ShapeIF            DistanceIF         {
    private double r
    public CC(){ super()  r0 }
    public CC(double r){super() thisrr}
    public CC(double xdouble ydouble r){super(xy) thisrr}

    public double S(){
    return   ShapeIF PI    *r*r
    }
    public double L(){
    return PI*2*r
    }

    public double D(double xdouble y){
    return     Mathsqrt((ShapeIFxx)*( ShapeIFxx)+( ShapeIFyy)*( ShapeIFyy))                        
    }

    public double DD(double xdouble y){
    if(D(xy)else if(D(xy)r)return 1  返回1表示圆
    else return 2               返回2表示圆外
    }
    }
     
    运行类ShapeRun1
    public class ShapeRun1 {
    public static void main(String args[])
    {
    String str
    CC c1new CC(125)果句改ShapeIF c1new CC(125)
                                    者改DistanceIF c1new CC(125)
    第结果调DDD方法第二结果调SL方法 
    接口CC类中已实现ShapeIFDistanceIF接口中方法CC类中没接口定义方法访问                   程序会出现什情况请讲明原

    Systemoutprintln(c1S())
    Systemoutprintln(c1L())
    Systemoutprintln(c1D(3 4))
    if(c1DD(34)0)str   圆           
    else if(c1DD(34)1)str  圆            
    else str圆外
    Systemoutprintln(str)
    }
    }
    3面三类(PointColorPointMapPoint)中PointColorPoint父类ColorPointMapPoint父类运行类UseAllPointPointColorPointMapPoint中相方法public void draw()请家根方法理解态性完成程序中              注释部分
    提示代码
    类Point
    public class Point {
        protected int x
        protected int y
        protected Point(int x int y)
         { thisxx
           thisyy
         }
        public void draw()              父类draw()方法
          { Systemoutprintln(Pointa point(+thisx++thisy+))
          }  
    }
     
    类ColorPoint
    public class ColorPoint extends Point
    *类ColorPoint类Point直接子类类Point类ColorPoint
    直接父类类ObjectColorPoint缺省父类直接
    父类*
    {   protected  int color
                  protected ColorPoint(int xint yint color)
                  {super(xy)
                   thiscolorcolor}
    public void draw()   覆盖父类draw()类
    {
    Systemoutprintln(ColorPoint a color point (+thisx++thisy++thiscolor+))
    }
           }
     
    类MapPoint
    public class MapPoint  extends ColorPoint
    *类MapPoint 类ColorPoint直接子类 类ColorPoint类MapPoint
    直接父类类ObjectPointMapPoint直接父类
    *
    {  String  name                   图点名字城市名
            protected MapPoint(int xint yint colorString name)
           {
         super(xycolor)
        thisnamename
          }
       public  void draw()            覆盖父类draw()类
           {
            Systemoutprintln(MapPoint a map color point (+thisx++thisy++thiscolor++thisname+))
            }
    }
     
    类UseAllPoint
    public class UseAllPoint {
        public static void main(String args[])
         {
           Point p1new Point(12)  实例化Point类象            
                 p1draw()       调pointdraw方法              
                 p1new ColorPoint(123)
                 p1draw()       父类引指ColorPoint子类象先调象方法                
                 p1new MapPoint(123123)
                 p1draw()         父类引指MapPoint子类象 先调象方法                 
         }
      }
    4创建名称Vehicle接口接口中添加两带参数方法start()stop()两名称分BikeBus类中实现Vehicle接口创建名称interfaceDemo类interfaceDemomain()方法中创建BikeBus象访问start()stop()方法
     public interface ShapeIF {
    public double start(double x)
    public double stop(double x)

    }


    public class Bike implements ShapeIF {

    @Override
    public double start(double x) {
    TODO 动生成方法存根
    return 1
    }

    @Override
    public double stop(double x) {
    TODO 动生成方法存根
    return 1
    }


    }


    public class Bus implements ShapeIF{

    @Override
    public double start(double x) {
    TODO 动生成方法存根
    return 2
    }

    @Override
    public double stop(double x) {
    TODO 动生成方法存根
    return 0
    }


    }

     
    public class Bus implements ShapeIF{

    @Override
    public double start(double x) {
    TODO 动生成方法存根
    return 2
    }

    @Override
    public double stop(double x) {
    TODO 动生成方法存根
    return 0
    }



     
     
    5创建名称CCCircle类表示面坐标系圆形求圆心点CCCircle部类Point表示CCCircle类中包含求点圆心距离方法public double distance(Piont p)main方法中实例化圆c((1010)2)点p(55)求pc间关系
     
     
    四思考题
    1.简述接口抽象类区
    接口抽象类概念样接口动作抽象抽象类根源抽象
    2.方法态性实现手段什 
    1虚方法 2抽象类 3接口


    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 3 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    SQLserver实验实验6实验6答案

    第7章 创建数据类型、表报告书名称实验7-2创建数据类型和表姓名指导教师学号日期任务清单l 场景Adventure Works 的销售经理请求修改公司数据库,以包含有关已退货物和已退款销售的...

    3年前   
    1010    0

    (汇编语言、微机原理及接口技术)实验交通灯

     课程设计说明书 课程设计名称: 微机原理与接口技术课程设计 课程设计题目: 微机打印口外接交通灯模拟LED显示器 学 院 名 称: 信...

    2年前   
    470    0

    计算机输入输出系统接口实验报告

    计算机输入输出系统接口实验报告姓名:学号:二 0 16 年 X月实验一 环境熟悉与 I/O 地址译码一、实验目的掌握I/O地址译码电路的工作原理。二、实验内容将接口实验包中所带的 EX-138...

    7个月前   
    271    0

    单片机原理与接口技术实验指导书(2018修订)

    本课程是电子信息工程、通信工程、信息工程和自动化专业必修的专业实验课程。通过本课程的教学,使学生深刻体会到单片机原理与接口技术的应用,掌握汇编和C51语言的语法和技巧,熟悉电子系统的设计和调试过...

    3年前   
    602    0

    微机原理与接口技术 实验报告一

    评阅微机原理与接口技术 实验报告一姓名 匡越 学号 1715211016 时间 地点 实验题目 ...

    4年前   
    1170    0

    实验6FFT算法的应用

    实验6 FFT算法的应用实验目的:加深对离散信号的DFT的理解及其FFT算法的运用。实验原理:N点序列的DFT和IDFT变换定义式如下: , 利用旋转因子具有周期性,可以得到快速算法(FF...

    1年前   
    378    0

    铁路四电接口工程

    厦深铁路四电接口工程 厦深高速铁路是需要多专业、多工种协同配合施工的系统工程。而目前在建的土建工程所涉及四电接口,是开展站后四电工程的基础,没有良好的基础,站后四电工程就谈不上高质量。 一...

    12年前   
    13010    0

    消防联动系统接口要求

    根据xx建筑设计院的设计图纸及有关消防规范对各种消防受控制设备的控制及显示功能要求,并结合利达消防报警设备的具体特点,我公司对xx大学消防系统联动设备的接口提出以下要求:1.排烟风机 消防控制系...

    2个月前   
    77    0

    司法部接口校验规则

    司法部接口校验规则   B.1基本身份信息校验规则 基本身份信息填表说明如下: 1、 *是否调查评估:调查评估是指人民法院、人民检察院、公安机关、监狱对拟适用社区矫正的被告人、罪犯,需...

    6年前   
    2094    0

    实验室6S管理大全

    1、如何打造一个舒适的实验室环境环境?2、如何提升实验室人员的工作热情?3、如何提高实验室工作效率?4、如何增加实验室设备的使用寿命?5、如何塑造良好实验室形象?6、如何创造一个能让客户参观的...

    2年前   
    577    0

    基于凌阳单片机的红外通信接口设计

    科 研 训 练 报 告报告题目:基于凌阳单片机的红外通信接口设计姓 名 院(系) 电气与电子工程学院 ...

    2年前   
    395    0

    CRM系统服务产品外围系统接口说明

    CRM系统服务产品外围系统接口说明 1.1      查询数据字典 说明:获取取消服务产品原因选项的数据字典信息。 对应的存储过程:crmii. PCX_FWCP_CXSJZD 输入:...

    11年前   
    11394    0

    微信公众平台消息接口使用指南

    一、简介公众平台消息接口为开发者提供了一种新的消息处理方式。二、申请消息接口点击申请,如实填写负责人姓名、手机号和邮箱,填写网址url和token,其中token可由开发者可以任意填写,用作生...

    11年前   
    1000    0

    新停车场API接口V1.1

    接口采用 HTTP 协议,支持 GET 或 POST 请求方式(具体接口参见接口定义),请求头需要包含编码描述:

    5年前   
    1395    0

    四电接口工程施工方案

    新建铁路兰州至乌鲁木齐第二双线张掖至红柳河段工程LXS-17标段四电接口工程施工方案编制: 审核: 批准: ...

    2年前   
    430    0

    实验室安全、危化品及6S标准化管理规定

    为规范实验室仪器、药品使用及储存管理,加强实验室危险化学品的安全管理,规范各类仪器、设备的维护保养,建立起标准化、规范化的实验室,顺应公司制度化建设的发展趋势,特制定本规定。

    4年前   
    1853    0

    小学科学实验报告单(3-6年级)

    小学科学实验报告单 学校XX小学 年级 时间 实验名称  小组成员实验教师实验目的 实验器材 实验过程实验现象或实验结果小学科学实验报告单  学校三小 年级 六时间 实验名称观察植物 小组成员...

    4年前   
    905    0

    标准实验报告(6)雷达辐射源测向

    实 验 报 告(六)一、实验室名称:信息对抗系统专业实验室二、实验项目名称:雷达辐射源测向三、实验学时:4学时实验原理:比幅法测向的基本原理:求两信号幅度的比值,根据比值的大小可以判断目...

    3年前   
    910    0

    关于做好近期及寒假期间实验室安全工作的通知6篇

    关于做好近期及寒假期间实验室安全工作的通知(6篇)   关于做好近期及寒假期间实验室安全工作的通知(6篇)   (篇一)   各学院(中心)实验室:   根据1月3日国务院安委办召开的...

    5年前   
    954    0

    企业沙盘模拟实验总结报告(6篇)

    企业沙盘模拟实验总结报告(6篇) 实训目的: ERP实习是在模拟企业经营运作对抗课程是一种全新的体验式学习,课程将简单、抽象的.经营治理理论以最直观的方式让学生体验、学习,在此课...

    1年前   
    319    0