作业6(接口题上机)含答案.doc_第1页
作业6(接口题上机)含答案.doc_第2页
作业6(接口题上机)含答案.doc_第3页
作业6(接口题上机)含答案.doc_第4页
作业6(接口题上机)含答案.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题1具有照像功的设备:手机Phone,数码照像机Camera,平板电脑Tablet pc请遵循 照像功能Photographable实现其Public void takePhoto()方法提示分别是设计3种设备的类,分别实现其照像功能的接口package ;public class Camera extends Photographable implements TakePhoto public Camera( String name )super( name );System.out.println( -有参- +name );public Camera()public void takePhoto()System.out.println( getName() + :像素很高 );Overridepublic void takePhotoint() / TODO Auto-generated method stubSystem.out.println( getName() + 有夜间模式,微距离模式等 );package ;public class Phone extends Photographable implements TakePhoto public Phone( String name )super( name );System.out.println( -有参- +name );public Phone()public void takePhoto()System.out.println( getName() + :像素低 );Overridepublic void takePhotoint() / TODO Auto-generated method stubSystem.out.println( getName() + 有傻瓜照相功能,还能打电话 );package ;public class TabletPC extends Photographable implements TakePhotopublic TabletPC( String name )super( name );System.out.println( -有参- +name );public TabletPC()public void takePhoto()System.out.println( getName() + :像素还行 );Overridepublic void takePhotoint() / TODO Auto-generated method stubSystem.out.println( getName() + 屏幕大,看得爽,还能玩高清游戏 );package ;public abstract class Photographable private String name;public String getName() return name;public void setName(String name) = name;public Photographable( String name ) = name;public Photographable()public abstract void takePhoto();package ;public abstract interface TakePhoto public void takePhotoint();package .test;import .Camera;import .Phone;import .Photographable;import .TabletPC;public class TestPhoto /* * param args */public static void main(String args) / TODO Auto-generated method stubPhotographable pho = new Phone( 洛基亚 );pho.takePhoto();if( pho instanceof Phone )Phone p1 = (Phone)pho;p1.takePhotoint();System.out.println( * );Phone ph = new Phone( 小米 );ph.takePhoto();ph.takePhotoint();Camera ca = new Camera( 索尼数码 );ca.takePhoto();ca.takePhotoint();TabletPC ta = new TabletPC( ipad );ta.takePhoto();ta.takePhotoint();习题2打印机:打印机有多种类型,比如:黑白打印机、彩色打印机等学校可能配备其中任意一款打印机,负责打印人、或者书的详细信息系统要具备良好的可扩展性与可维护性package m;public interface BlackAndWhitePrinter public abstract void BAWPrint();package m;public interface ColourPrinter public abstract void colourPrint();package m;public class BookInformation implements ColourPrinter Overridepublic void colourPrint() / TODO Auto-generated method stubSystem.out.println( 我要打印一本彩色漫画书,需要彩色打印机 );package m;public class PersonnelInformation implements BlackAndWhitePrinter Overridepublic void BAWPrint() / TODO Auto-generated method stubSystem.out.println( 我要打印人事信息,需要用黑白打印机 );package m;public class TestPrinter /* * param args */public static void main(String args) / TODO Auto-generated method stubColourPrinter cp = new BookInformation();cp.colourPrint();BlackAndWhitePrinter bwp = new PersonnelInformation();bwp.BAWPrint();习题3在几何图形中,按图形的几何维数分为平面图和立体图,所有的平面图都能计算周长和面积,所有的立体图都能计算表面积和体积.定义Shape2D和Shape3D接口,分别描述平面图和立体图的特征和行为,在Shape2D中定义计算周长和面积的方法,Shape3D继承Shape2D接口,新增计算体积的方法,定义Circle圆类和Sphere球类,分别实现Shape2D和Shape3D接口。package mm;public interface Shape2D double pi = 3.14;public abstract double perimeter( double r );public abstract double area( double r );package mm;public interface Shape3D extends Shape2D public abstract double volume( double r );package mm;public class Circle implements Shape2D private double r;public double getR() return r;Overridepublic double area( double r ) / TODO Auto-generated method stubreturn pi*r*r;Overridepublic double perimeter( double r ) / TODO Auto-generated method stubreturn 2*pi*r;package mm;public class Sphere implements Shape3D private double r;public double getR() return r;Overridepublic double volume( double r ) / TODO Auto-generated method stubreturn 4.0/3.0*pi*r*r*r;Overridepublic double area(double r) / TODO Auto-generated method stubreturn 4*pi*r*r;Overridepublic double perimeter(double r) / TODO Auto-generated method stubreturn 2*pi*r;package mm;import java.util.Scanner;public class TestShape /* * param args */public static void main(String args) / TODO Auto-generated method stubScanner sc = new Scanner( System.in );System.out.println( 求圆的面积和周长请输入1 求球的面积、体积和周长请输入2 );int i = sc.nextInt();if( i = 1 )System.out.println( 请输入圆的半径: );double r = sc.nextDouble();Shape2D s2 = new Circle();System.out.println( 圆的面积为: + s2.area(r) + 平方米 );System.out.println( 圆的周长为: + s2.perimeter(r) + 米 );if( i = 2 )System.out.println( 请输入球的半径: );double r = sc.nextDouble();Shape3D s2 = new Sphere();System.out.println( 球的面积为: + s2.area(r) + 平方米 );System.out.println( 球的体积为: + s2.volume(r) + 立方米 );System.out.println( 球的最大截面周长为: + s2.perimeter(r) + 米 );习题4定义一个手机接口(定义5个方法:打电话、发短信、蓝牙、照相、gps功能),再定义诺基亚类、三星类(注意:每种手机分为三个档次,高端机,中端机,低端机;高端机有所有5个功能,中端机没有GPS功能,低端机只有打电话和发短信功能)。在实现一个测试类,要求在测试类定义一个方法show出手机的所有功能:注,传入的手机有可能是任何手机package mmm;public interface MobilePhone public abstract void phone();public abstract void message();public abstract void blueteeth();public abstract void photo();public abstract void gps();package mmm;public class Nokia implements MobilePhone private String name;public String getName() return name;public Nokia( String name ) = name;System.out.println( name + 的功能有: );public Nokia()Overridepublic void blueteeth() / TODO Auto-generated method stubSystem.out.println( 蓝牙功能 );Overridepublic void gps() / TODO Auto-generated method stubSystem.out.println( gps功能 );Overridepublic void message() / TODO Auto-generated method stubSystem.out.println( 发短信功能 );Overridepublic void phone() / TODO Auto-generated method stubSystem.out.println( 打电话功能 );Overridepublic void photo() / TODO Auto-generated method stubSystem.out.println( 照相功能 );package mmm;public class NokiaHigh extends Nokia public NokiaHigh( String name )super( name );public NokiaHigh()public void blueteeth() System.out.println( 蓝牙功能 );public void gps() System.out.println( gps功能 );public void message() System.out.println( 发短信功能 );public void phone() System.out.println( 打电话功能 );public void photo() System.out.println( 照相功能 );package mmm;public class NokiaMiddle extends Nokia public NokiaMiddle( String name )super( name );public NokiaMiddle()public void blueteeth() System.out.println( 蓝牙功能 );public void gps() public void message() System.out.println( 发短信功能 );public void phone() System.out.println( 打电话功能 );public void photo() System.out.println( 照相功能 );package mmm;public class NokiaLow extends Nokia public NokiaLow( String name )super( name );public NokiaLow()public void blueteeth() public void gps() public void message() System.out.println( 发短信功能 );public void phone() System.out.println( 打电话功能 );public void photo() package mmm;import java.util.Scanner

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论