java接口编程题_Java接口练习题
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接口练习题相关推荐
- java 初级编程题_java基础经典编程题
java基础经典编程题 Monkey_peach代码 package com.sailor.game; /** * 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第 ...
- java 字符串编程题_Java编程题——在一个字符串中查找第一个非重复的字符
编写一个Java程序来查找一个字符串中第一个非重复的字符,这是在编程测试中很常见的一个问题,因为字符串处理在程序员面试中是一个普遍的话题.面试前最好是准备好一些熟知的编程问题,例如使用递归反转字符串, ...
- java循环编程题_Java 循环 编程练习题(下)
3.素数和 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推. 现在,给定两个整数n和m,0 输入格式: 两个整数,第一个表示n,第二个表示m. 输出格式: 一个整数,表示 ...
- java栈编程题_Java实现栈和队列面试题
面试的时候,栈和队列经常会成对出现来考察.本文包含栈和队列的如下考试内容: (1)栈的创建 (2)队列的创建 (3)两个栈实现一个队列 (4)两个队列实现一个栈 (5)设计含最小函数min()的栈,要 ...
- Java面向对象编程篇3——接口与抽象类
Java面向对象编程篇3--接口与抽象类 1.接口(interface) 接口中可以含有变量和方法.但是要注意,接口中的变量会被隐式地指定为public static final变量(并且只能是pub ...
- Java面向对象编程——抽象类和接口
Java面向对象编程--抽象类和接口 定义类的过程就是抽象和封装的过程,而抽象类与接口则是对实体类进行更高层次的抽象,进定义公共行为和特征. 抽象类: 如果一个类没有足够的信息去描述一个具体的对象,那 ...
- 零基础学Java语言---编程题
零基础学Java语言-编程题 注意:没有上机实际测过,代码仅供参考 1.温度转换 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C + 32 其中C表示摄氏温度,F表示 ...
- Java简单编程题:大小写转换、兔子生兔子问题、狼追兔子问题、判断英文句子。
Java简单编程题 1.大小写转换 2.兔子生兔子问题 3.狼追兔子问题 4.判断英文句子 1.大小写转换 输入一串字母 1.将大写转换为小写,小写转换为大写 2.将其全转换为小写 3.将其全转换为大 ...
- java web基础编程题_Java Web基础笔试题
2015-10-31 06:30:02 阅读( 432 ) 一. 填空题(每空2分,共30分) 1.在tomcat上发布javaweb应用时的默认目录是__webapps___目录. 2.javawe ...
最新文章
- python爬取网页上的特定链接_python3下scrapy爬虫(第三卷:初步抓取网页内容之抓取网页里的指定数据)...
- 蓝桥杯java 算法提高 摆花
- 在WPF中,如何得到任何Object对象的XAML代码?
- 十六、数据变换和数据离散化
- 小甲鱼python课件源代码_[Python基础] 小甲鱼零基础入门Python学习视频+全套源码课件 Python视频教程 96讲...
- (二十九)、Java字符串中去除空格
- 电路常识性概念(1)-输入、输出阻抗
- php 怎么配置邮件,PHP发邮件的配置_PHP教程
- Fence Repair (poj3253)
- oracle11g怎样进行闪回,模拟Oracle11g下用Flashback Data Archive进行恢复的若干场景
- Hadoop安装详细教程 单机版
- CAD中PDF转DWG
- 2020年网络搭建与应用国赛题-防火墙ipsec建立分解
- PyEcharts 之 仪表盘
- php是一种什么脚本语言
- “bang” in JavaScript
- 小米手机显示服务器已满,小米云空间不足怎么办 小米云服务空间已满官方解决方案...
- 深度学习~模糊神经网络(FNN)
- 简单爬取Library genesis 免费文献下载网
- 个人对粗糙集的一些理解和简单举例
热门文章
- matlab人体轮廓识别,人体动作识别代码,求问这是提取的什么轮廓信息
- tp5insertAll和saveAll
- 正则表达式“\\s+“ 匹配任意空白字符
- 路由追踪——traceroute与tracert
- Oracle联立多个表建视图,一个简单的联立方程组模型让你了解内外生变量、如何识别以及2SLS估计步骤...
- Day27_GUI编程
- SQL Server 建表时出现未指定的错误,怎么解决?
- android 返回按钮 黑色,安卓推送10.0,取消返回键,增设暗黑模式,这些改变你知道吗?...
- pc模式 华为mate30_华为Mate 30全系支持PC模式 如何实现手机投屏
- 优质的教育直播平台源码是如何进行在线教育系统搭建的