1.说出下面程序的执行结果:

interface InterfaceA

{

String S = "good ";

void f();

}

abstract class ClassA

{

abstract void g();

}

class ClassB extends ClassA implements InterfaceA

{

void g()

{

System.out.print(S);

}

public void f()

{

System.out.print(" "+ S);

}

}

public class Test1

{

public static void main(String[] args)

{

ClassA a = new ClassB();

InterfaceA b = new ClassB();

a.g();

b.f();

}

}

运行结果:good  good (中间是两个空格)

2.编程题:

利用接口做参数,写个计算器,能完成加减乘除运算。

(1)定义一个接口Compute含有一个方法int computer(int n, int m)。

(2)设计四个类分别实现此接口,完成加减乘除运算。

(3)设计一个类UseCompute,类中含有方法:public void useCom(Compute com, int one, int two),此方法能够用传递过来的对象调用computer方法完成运算,并输出运算的结果。

(4)设计一个主类Test,调用UseCompute中的方法useCom来完成加减乘除运算。

interface Computer

{

int computer(int n, int m);

}

class Add implements Computer

{

public int computer(int n, int m)

{

System.out.print(n+"+"+m+"=");

return n+m;

}

}

class Sub implements Computer

{

public int computer (int n, int m)

{

System.out.print(n+"-"+m+"=");

return n-m;

}

}

class Mul implements Computer

{

public int computer (int n, int m)

{

System.out.print(n+"*"+m+"=");

return n*m;

}

}

class Div implements Computer

{

public int computer (int n, int m)

{

System.out.print(n+"/"+m+"=");

return n/m;

}

}

class UseComputer

{

public void useCom(Computer com, int one, int two)

{

System.out.println (com.computer(one, two));

}

}

public class Test

{

public static void main (String[] args)

{

UseComputer uc = new UseComputer();

uc.useCom(new Add(), 10, 20);

uc.useCom(new Sub(), 15, 10);

uc.useCom(new Mul(), 10, 20);

uc.useCom(new Div(), 15, 5);

}

}

3.按如下要求编写Java程序:

(1)定义接口A,里面包含值为3.14的常量PI和抽象方法double area()。

(2)定义接口B,里面包含抽象方法void setColor(String c)。

(3)定义接口C,该接口继承了接口A和B,里面包含抽象方法void volume()。

(4)定义圆柱体类Cylinder实现接口C,该类中包含三个成员变量:底圆半径radius、

圆柱体的高height、颜色color。

(5)创建主类来测试类Cylinder。

interface A

{

final double pl = 3.14;

double area();

}

interface B

{

void setColor(String c);

}

interface C extends A, B

{

void volume();

}

class Cylinder implements C

{

private double radius;

private double height;

private String color;

public Cylinder (double radius, double height)

{

this.height = height;

this.radius = radius;

}

public double area ()

{

return pl*radius*radius;

}

public void setColor (String color)

{

this.color = color;

}

public void volume ()

{

System.out.println ("圆柱体积为:"+area()*height+"颜色为:"+this.color);

}

}

public class Test

{

public static void main (String[] args)

{

Cylinder cyl = new Cylinder(10.0, 20.0);

cyl.setColor("红色");

cyl.volume();

}

}

运行结果为:

4.(附加题-算法)

一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程 找出1000以内的所有完数。

public class Test

{

public static void main (String[] args)

{

for (int i=1; i<1000; ++i)

{

wanShu(i);

}

}

public static void wanShu(int num)

{

int sum = 0;

for (int i=num-1; i>0; --i)

{

if (num%i == 0)

{

sum+= i;

}

}

if (sum == num)

{

System.out.print (num+" ");

}

}

}

运行结果:

java接口编程题_Java接口练习题相关推荐

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

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

  2. java 字符串编程题_Java编程题——在一个字符串中查找第一个非重复的字符

    编写一个Java程序来查找一个字符串中第一个非重复的字符,这是在编程测试中很常见的一个问题,因为字符串处理在程序员面试中是一个普遍的话题.面试前最好是准备好一些熟知的编程问题,例如使用递归反转字符串, ...

  3. java循环编程题_Java 循环 编程练习题(下)

    3.素数和 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推. 现在,给定两个整数n和m,0 输入格式: 两个整数,第一个表示n,第二个表示m. 输出格式: 一个整数,表示 ...

  4. java栈编程题_Java实现栈和队列面试题

    面试的时候,栈和队列经常会成对出现来考察.本文包含栈和队列的如下考试内容: (1)栈的创建 (2)队列的创建 (3)两个栈实现一个队列 (4)两个队列实现一个栈 (5)设计含最小函数min()的栈,要 ...

  5. Java面向对象编程篇3——接口与抽象类

    Java面向对象编程篇3--接口与抽象类 1.接口(interface) 接口中可以含有变量和方法.但是要注意,接口中的变量会被隐式地指定为public static final变量(并且只能是pub ...

  6. Java面向对象编程——抽象类和接口

    Java面向对象编程--抽象类和接口 定义类的过程就是抽象和封装的过程,而抽象类与接口则是对实体类进行更高层次的抽象,进定义公共行为和特征. 抽象类: 如果一个类没有足够的信息去描述一个具体的对象,那 ...

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

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

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

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

  9. java web基础编程题_Java Web基础笔试题

    2015-10-31 06:30:02 阅读( 432 ) 一. 填空题(每空2分,共30分) 1.在tomcat上发布javaweb应用时的默认目录是__webapps___目录. 2.javawe ...

最新文章

  1. python爬取网页上的特定链接_python3下scrapy爬虫(第三卷:初步抓取网页内容之抓取网页里的指定数据)...
  2. 蓝桥杯java 算法提高 摆花
  3. 在WPF中,如何得到任何Object对象的XAML代码?
  4. 十六、数据变换和数据离散化
  5. 小甲鱼python课件源代码_[Python基础] 小甲鱼零基础入门Python学习视频+全套源码课件 Python视频教程 96讲...
  6. (二十九)、Java字符串中去除空格
  7. 电路常识性概念(1)-输入、输出阻抗
  8. php 怎么配置邮件,PHP发邮件的配置_PHP教程
  9. Fence Repair (poj3253)
  10. oracle11g怎样进行闪回,模拟Oracle11g下用Flashback Data Archive进行恢复的若干场景
  11. Hadoop安装详细教程 单机版
  12. CAD中PDF转DWG
  13. 2020年网络搭建与应用国赛题-防火墙ipsec建立分解
  14. PyEcharts 之 仪表盘
  15. php是一种什么脚本语言
  16. “bang” in JavaScript
  17. 小米手机显示服务器已满,小米云空间不足怎么办 小米云服务空间已满官方解决方案...
  18. 深度学习~模糊神经网络(FNN)
  19. 简单爬取Library genesis 免费文献下载网
  20. 个人对粗糙集的一些理解和简单举例

热门文章

  1. matlab人体轮廓识别,人体动作识别代码,求问这是提取的什么轮廓信息
  2. tp5insertAll和saveAll
  3. 正则表达式“\\s+“ 匹配任意空白字符
  4. 路由追踪——traceroute与tracert
  5. Oracle联立多个表建视图,一个简单的联立方程组模型让你了解内外生变量、如何识别以及2SLS估计步骤...
  6. Day27_GUI编程
  7. SQL Server 建表时出现未指定的错误,怎么解决?
  8. android 返回按钮 黑色,安卓推送10.0,取消返回键,增设暗黑模式,这些改变你知道吗?...
  9. pc模式 华为mate30_华为Mate 30全系支持PC模式 如何实现手机投屏
  10. 优质的教育直播平台源码是如何进行在线教育系统搭建的