云大JAVA 实验8接口

时间:2024.3.31

  实验报告

课程:  Java程序设计实验    学期: 20##-2011学年第一学期   任课教师:         

专业:   软件工程    学号:            姓名:             成绩:         

实验接口

1. 程序一接口Playing.java:

源程序代码如下:

publicinterface Playing

{

        publicabstract String play();  //抽象函数

}

2.程序二Child. java:

 源程序代码如下:

 publicclass Child implements Playing

{

    public String play()  //实现抽象函数

    {

       String str = "I am a child and I am playing a game.";

       return str;

    }

}

3.程序三Musician. java:

 源程序代码如下:

publicclass Musician implements Playing

{

    public String play() //实现抽象函数

    {

       String str = "I am a musician and I am playing a song.";

       return str;

    }

}

4.程序四Actor. java:

 源程序代码如下:

publicclass Actor implements Playing

{

    public String play()  //实现抽象函数

    {

      String str = "I am an actor and I am playing a part.";

      return str;

    }

}

5.程序五UsePlaying. java:

 源程序代码如下:

import javax.swing.JOptionPane;

publicclass UsePlaying {

    publicstaticvoid main(String[] args)

    {

       Playing child = new Child();

       Playing musician = new Musician();

       Playing actor = new Actor();

      

       String str1 = child.play();

       String str2 = musician.play();

       String str3 = actor.play();    

      

      

       JOptionPane.showMessageDialog(null,str1 + "\n" + str2 + "\n"

+ str3 + "\n\n" + str4);

    }

}

执行结果截图:


第二篇:云大JAVA实验7


云南大学软件学院

实  验  报  告

课程名称:《JAVA程序设计实验》实验名称:  实验七  继承

学    号:                       姓    名:               

Lab # 7

一、实验目的;

熟悉掌握java程序,对继承有一定的了解

二、实验过程;

实验代码和实验结果;

I 程序1

程序源码

课程类CollegeCourse.java:

package edu.ynu.lab7;

public class CollegeCourse

{

       protected   int flag;;

      

       public CollegeCourse(int F)

       {

               flag=F;

       }

      

       public double cost()  //设置课程费用

        {

              if(flag == 001)

                  return 180;

              else if(flag == 002)

                     return 170;

              else if(flag == 003)

                     return 160;

                else if(flag == 004)

                     return 150;

                else if(flag == 005)

                     return 140;

                else

                    return 100;

       }

}

实验类;Lab.java

package edu.ynu.lab7;

public class Lab extends CollegeCourse  //继承CollegeCourse

{

       public Lab(int F)

       {

              super(F);

       }

    @Override

       public double cost()  //按照课程设置实验

       {

              if(super.flag == 001)

                  return 25;

              else if(super.flag ==002)

                     return 20;

                else if(super.flag == 003)

                     return 15;

                else if(super.flag == 004)

                     return 14;

                else if(super.flag == 005)

                     return 18;

              else

                     return 10;

       }

}

主程序UserCourse:

package usecourse;

import java.util.Scanner;

import edu.ynu.lab7.*;

public class UseCourse {

    int flag;

    UseCourse()

{

     System.out.println("Input a cources number:you can input 001,002,003,004 or 005");        Scanner sc=new Scanner(System.in);

     flag=sc.nextInt();     //根据输入选择调用输出

            CollegeCourse course = new CollegeCourse(flag);

            CollegeCourse lab = new Lab(flag);

            System.out.println( "The cost of your course is $" + course.cost());

            System.out.println( "There is a $" + lab.cost() + " lab fee.");

            System.out.println("The cost of your course is $" + (course.cost()+lab.cost()));

}

       public static void main(String[] args)

       {  

               UseCourse UseCourse=new UseCourse();

             

       }

}

运行结果如图(1)图(2)所示

//图(1)

//图(2)

Ⅱ程序2

主程序UseAuto.java

import newpackage.*;

public class UseAuto {

       public static void main(String[] args)

       {

              Auto ford = new Ford();

              Auto chevy = new Chevy();

                Auto BMW=new BMW();

             

              ford.setPrice(20000);   //设置价格

              chevy.setPrice(22000);  //设置价格

              BMW.setPrice(35000);  //设置价格

              System.out.println( "A new " + ford.getMaker() + " costs $"

+ ford.getPrice()) ;

              System.out.println("A new " + chevy.getMaker() + " costs $"

+ chevy.getPrice()) ;     

                System.out.println( "A new " + BMW.getMaker() + " costs $"

+ BMW.getPrice()) ;

               

       }

}

抽象类Auto.java

package newpackage;

public abstract class Auto

{

        private String Maker = null;

        protected double Price;

        

        public void setMaker(String maker)  //设置制造商

        {

               this.Maker = maker;

        }

        

        public String getMaker() //返回制造商

        {

               return Maker;

        }

        

        public abstract void setPrice(double price);  //设置价格

        

        public double getPrice()   //返回价格

        {

               return Price;

         }

}

子类Chevy.java

package newpackage;

public class Chevy extends Auto

{

       public Chevy()

    {

           setMaker("Chevy");  //设置制造商

    }

    @Override

       public void setPrice(double price)   //实现抽象函数

       {

           this.Price = price;

       }

}

子类Ford.java

package newpackage;

public class Ford extends Auto

{

    public Ford()

    {

           setMaker("Ford");  //设置制造商

    }

    @Override

       public void setPrice(double price)  //实现抽象函数

       {

           this.Price = price;

       }  

}

子类BMW.java

package newpackage;

public class BMW extends Auto

{

    publicBMW()

    {

           setMaker("BMW");  //设置制造商

    }

    @Override

       public void setPrice(double price)  //实现抽象函数

       {

           this.Price = price;

       }  

}

//运行结果如图(3)所示

//图(3)

三、实验小结;

通过此次实验我了解了包的运用,抽象类的使用,明白包的引用和抽象类的相关定义和使用规则,对关键字extends有了一定的了解。了解子类与父类的关系。子类用extends表示子类由父类派生。

 

更多相关推荐:
接口实验报告

一实验目的1掌握8255A编程原理2掌握键盘的输入和数码管的显示3提高理论与实践相结合的能力强化所学内容二实验要求用8255A实现模拟电梯用键盘输入要求电梯所到达的楼层数码管显示电梯当前所在楼层电梯在初始楼层当...

接口技术实验4报告

上海大学计算机学院计算机接口技术实验4专业计算机科学与技术班级周一13节姓名学号计算机工程与科学学院报告日期20xx年10月29日实验名称AD转换实验和电机驱动实验一实验目的1掌握ADC0809芯片的硬件电路知...

微机接口实验报告

实验一显示程序实验20xx年4月22日1实验目的及实验内容实验目的1掌握在PC机上以十六进制数形式显示数据的方法2掌握部分DOS功能调用的使用方法3熟悉Tddebug调试环境和TurboDebugger的使用实...

接口实验报告

现代微机原理与接口技术接口部分实验报告学号09008112姓名马京亚成绩学号东南大学计算机科学与工程学院二一年十二月微机原理与接口技术接口部分实验报告目录实验二可编程定时器计数器82533实验三Windows中...

接口实验报告

武汉轻工大学现代微机原理与接口技术报告学号姓名班级成绩20xx年5月15日110511313王雪瑞网工一班实验1定时与中断接口程序设计实验项目定时与中断接口程序设计实验日期4月22日实验场地东7409实验环境硬...

接口实验报告

一实验目的及要求目的通过本次综合实验使学生综合运用计算机接口与通信技术汇编语言以及电子技术等课程的内容为以后从事计算机检测与控制工作奠定一定的基础要求1主要掌握并行IO接口芯片82538255A中断控制芯片82...

接口实验报告

接口实验报告,内容附图。

微机接口实验报告

武汉大学微机接口实验报告目录目录2实验一数据传送3实验二算术逻辑运算及移位操作7实验三算术逻辑运算及移位操作12实验四字符及字符串的输入和输出14微机原理与接口技术软件编程题目162实验一数据传送一实验目的1熟...

简单并行接口实验报告

实验一一实验题目简单并行接口74LS273二实验目的掌握简单并行接口的工作原理及使用方法三实验内容1按下图连接线路2编程从键盘输入一个字符或数字将其ASC码通过这个输出接口输出根据8个发光二极管发光情况验证正确...

继承和接口的实验报告(1)

深圳大学实验报告课程名称学院计算机与软件学院班级实验时间实验报告提交时间教务处制一实验目的1理解继承的概念掌握继承的语法2学习定义和使用子类3学习定义和使用抽象类4学习定义和使用接口5学习实现接口6掌握继承过程...

西安交通大学 接口实验报告

计算机接口技术课内实验报告物联网31班2130509005田雨桥20xx年12月11日实验一基本IO扩展实验一实验目的了解TTL芯片扩展简单IO口的方法掌握数据输入输出程序编制的方法二实验内容预备知识74LS2...

实验报告四 简单的IO接口

简单的IO接口091180083刘浩通信工程一实验目的1学习嵌入式Linux操作系统设备驱动的方法2通过动态LED控制扫描键盘应用步进电机驱动等控制掌握简单设备的基本控制原理二实验原理介绍1嵌入式系统的设备驱动...

接口实验报告(32篇)