题目1:创建Person接口(即“人”),它有setData()和getData()方法对“人”属性name、sex和birthday赋值和获得这些属性组成的字符串信息。创建类Student实现Person接口,并对自己的“学生”属性的成员变量sID、speciality设置值和获得它们值所组成的字符串信息。

代码:

People.java(接口)

package com.interfaces;public interface People {public void setData(String name,String sex,String birthday);public String getData();
}

Student.java(实现接口的类)

package com.interfaces.impl;import com.interfaces.People;public class Student implements People {private String name;  private String sex;  private String birthday;  private String sID="2014";  private String speciality="写代码";  @Overridepublic void setData(String name, String sex, String birthday) {// TODO Auto-generated method stubthis.name=name;this.sex=sex;this.birthday=birthday;}@Overridepublic String getData() {// TODO Auto-generated method stubreturn "名字: " + name + ",性別: " + sex + ",生日: " + birthday + ",ID: " + sID + ",专长: " +speciality;}public static void main(String[] args) {// TODO Auto-generated method stubPeople Yantai=new Student();Yantai.setData("海哥", "男", "2017年2月19日");System.out.println(Yantai.getData());}}

题目2:

编写程序,求柱体的体积:

(1)、为柱体的底面设计一个接口Geometry,包含计算面积的方法getArea();

(2)、为柱体设计类pillar,要求:

a)有两个成员变量,底面和高度。底面是任何可以计算面积的几何形状。

b)实现构造方法,对成员变量赋值。

c)包含成员方法,计算柱体pillar的体积。

(3)、编写测试类圆形类、矩形类实现Geometry接口,编写测试类Test,分别用圆形、矩形作为柱体的底面,并计算其体积。

代码:

Geometry.java(接口)

package com.interfaces;public interface Geometry {public double getArea();
}

Test.java(接口实现类)

package com.interfaces.impl;import com.interfaces.Geometry;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubPillar pillar;    Geometry bottom;    bottom = new Rect(10, 5); //接口实现方法   pillar = new Pillar(bottom, 5);    System.out.println("矩形底的柱体的体积:" + pillar.Volume());    bottom = new Circle(5); pillar = new Pillar(bottom, 5);    System.out.println("圆形底的柱体的体积:" + pillar.Volume());  }/** 柱体设计类*/class Pillar{Geometry bottom;  double height;  public Pillar(Geometry bottom, double height){  this.bottom=bottom;  this.height=height;  }  public double Volume(){  return bottom.getArea()*this.height;   }  }/** 矩形测试类*/class Circle implements Geometry{double radius;public Circle(double radius){  this.radius = radius;  }  public double getArea() {// TODO Auto-generated method stubreturn Math.PI*this.radius*this.radius;}}/** 圆形测试类*/class Rect implements Geometry{  double wide,length;  public Rect(double wide, double length){  this.wide = wide;  this.length = length;  }  public double getArea() {  return wide*length;  }  }
}

总结:网上搜的面试题,自己试着做了做。

Java 接口编程题练习相关推荐

  1. java接口编程题_Java接口练习题

    1.说出下面程序的执行结果: interface InterfaceA { String S = "good "; void f(); } abstract class Class ...

  2. Java 接口编程题

    定义一个接口,其中包含一个 display ( )方法用于显示信息:通知类.汽车类.广告类均要实现该接口,以显示"通知内容"."汽车油量"."广告消息 ...

  3. 零基础学Java语言---编程题

    零基础学Java语言-编程题 注意:没有上机实际测过,代码仅供参考 1.温度转换 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C + 32 其中C表示摄氏温度,F表示 ...

  4. Java简单编程题:大小写转换、兔子生兔子问题、狼追兔子问题、判断英文句子。

    Java简单编程题 1.大小写转换 2.兔子生兔子问题 3.狼追兔子问题 4.判断英文句子 1.大小写转换 输入一串字母 1.将大写转换为小写,小写转换为大写 2.将其全转换为小写 3.将其全转换为大 ...

  5. java程序设计编程题_20165237 2017-2018-2 《Java程序设计》第十周考试补做及编程题...

    20165237 2017-2018-2 <Java程序设计>第十周考试补做及编程题 知识点 1.链表是由若干个称作节点的对象组成的一种数据结构,每个节点含有一个数据和下一个节点的引用 . ...

  6. java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现

    看到有人写了阿里的面试题,心里痒痒,好久 没搞过这些了,写着实现一下 题目 2017年3月阿里在线编程题(实习内推) 给定一串数字 判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字 ...

  7. java 初级编程题_java基础经典编程题

    java基础经典编程题 Monkey_peach代码 package com.sailor.game; /** * 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第 ...

  8. 网易笔试编程题java_2017年网易校招笔试JAVA研发编程题

    为什么80%的码农都做不了架构师?>>> 尝试挑战了下网易2017校招的笔试编程题,共三题,AC第一题,第二题思考了很久勉强用一种low逼的方式完成,第三题没有完成,希望路过的ACM ...

  9. java 接口编程_JAVA面向接口编程

    一.什么是面向接口编程 要正确地使用Java语言进行面向对象的编程,从而提高程序的复用性,增加程序的可维护性.可扩展性,就必须是面向接口的编程.面向接口的编程就意味着:开发系统时,主体构架使用接口,接 ...

最新文章

  1. appium IOS真机测试
  2. Material组件之MaterialApp、Scaffold、AppBar学习笔记
  3. 荣耀6手机升级android版本,华为荣耀6手机系统是什么?荣耀6能升级安卓4.3吗?...
  4. Boost:基于Boost的优先调度器程序
  5. C++使用数组实现queue之二(附完整源码)
  6. 【数据结构与算法】之深入解析“序列化和反序列化二叉搜索树”的求解思路与算法示例
  7. 如何创建URL Mashup并插入到SAP Cloud for Customer标准页面里
  8. 菜鸟教程android布局,Android菜鸟级教程
  9. plsql大字段保存类型_大揭秘,学习python,为什么数据类型有这么重要
  10. vue-cli3 中 sockjs-node/info?t=报错 的解决方法
  11. places365_Google Places API网络服务示例
  12. 人手一份的Java面试精选题,你值得拥有!
  13. caffe测试单张图片
  14. 电子书下载:[FBI教你破解身体语言].(美)乔·纳瓦罗.(美)马文·卡尔林斯.文字版...
  15. MATPOWER工具本质原理解析
  16. 极限编程缺点_极限编程(XP)的优缺点是什么?
  17. 怀念张孝祥,张老师一路走好
  18. Java 全角半角转换工具类
  19. Mac 查询是否支持VT(Intel的Vanderpool的虚拟技术)
  20. SAP-Script脚本重复操作功能了解下(懒人必备)

热门文章

  1. 邮件代收代发软件操作说明
  2. SVN与TortoiseSVN修改日志和强制写日志实现详解
  3. 用java实现计算器
  4. [视觉模型]迁移学习之五个步骤
  5. 如何阅读Python代码?
  6. el+vue实战 ② 在el-table中的每一行加上头像/图片;去掉div标签自动换行问题;el-table表格中实现字数限制,只显示一行
  7. 计算机毕设——中文分词方法研究与实现
  8. C#实现的QQ登录器
  9. Mac上有哪些冷门但却逆天的软件?
  10. 程序员间 日常商业互捧。。