Java 接口编程题练习
2017-02-19 12:08
239 查看
题目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="写代码";
@Override
public void setData(String name, String sex, String birthday) {
// TODO Auto-generated method stub
this.name=name;
this.sex=sex;
this.birthday=birthday;
}
@Override
public String getData() {
// TODO Auto-generated method stub
return "名字: " + name + ",性別: " + sex + ",生日: " + birthday + ",ID: " + sID + ",专长: " +speciality;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
People 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 stub
Pillar 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 stub
return 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;
}
}
}
总结:网上搜的面试题,自己试着做了做。
代码:
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="写代码";
@Override
public void setData(String name, String sex, String birthday) {
// TODO Auto-generated method stub
this.name=name;
this.sex=sex;
this.birthday=birthday;
}
@Override
public String getData() {
// TODO Auto-generated method stub
return "名字: " + name + ",性別: " + sex + ",生日: " + birthday + ",ID: " + sID + ",专长: " +speciality;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
People 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 stub
Pillar 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 stub
return 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例程练习(接口interface)
- java例程练习(接口interface)
- java学习、java入门:JAVA编程题练习
- java匿名内部类,多态,接口练习
- java基础接口练习
- Java 基础一些代码练习笔记(继承+接口+多态)
- 【JAVA 日常练习 13.10】+ comparable接口实现
- java练习——接口与继承
- 我们神码小组第一次合作完成的java项目——类的多态继承与接口的使用练习。
- java编程题练习
- Java Q&A: 抽象类和接口 - 实战练习
- JAVA--第八周实验--接口的练习
- 继承,接口,多态练习java
- 接口强化练习(Java)
- 黑马程序员——Java练习笔记——抽象类和接口
- java例程练习(接口interface)
- java例程练习(Comparable接口)
- java接口类型的多态行为练习
- java笔记--day09--接口(四)练习
- 【JAVA 日常练习 13.9】+ 接口 + 抽象类