java实验接口与实现_Java语言程序设计 上机实验4 掌握声明接口、一个类实现接口的声明和使用方法...

这篇博客介绍了Java中如何声明接口和实现接口的示例,具体通过Cylinder类继承Ellipse并实现IVolume接口来计算体积和表面积。同时,展示了如何使用顺序查找法和二分查找法在字符串数组中查找特定元素。
摘要由CSDN通过智能技术生成

Cylinder.Javapackageone;public class Cylinder extends Ellipse implementsIVolume{/***@paramargs*/

inthigh;

Cylinder(){this.high=6;

}public doubleVolume(){return radius_a*radius_b*3.14*high;

}public doubleArea(){return radius_a*radius_b*3.14*2+high*Perimeter();

}public static voidmain(String[] args) {//TODO Auto-generated method stub

IVolume A=newCylinder();

IVolume V=newCylinder();

System.out.println("表面积是"+A.Area());

System.out.println("体积是"+V.Volume());

}

}

Ellipse.javapackageone;public class Ellipse implements IPerimeter,IArea{ //椭圆类

protected double radius_a; //a轴半径

protected double radius_b; //b轴半径

public Ellipse(double radius_a) { //构造方法

this.radius_a =radius_a;

}public Ellipse(double radius_a, double radius_b) { //构造方法

this.radius_a = radius_a; this.radius_b =radius_b;

}public Ellipse() { this(4,4); }publicString toString() {return "a轴半径"+this.radius_a+",b轴半径"+this.radius_b;

}public double Area() { //计算椭圆面积,覆盖父类的抽象方法

return Math.PI*this.radius_a*this.radius_b;

}public double Perimeter(){ //计算椭圆周长,覆盖父类的抽象方法

return Math.PI*(this.radius_a+this.radius_b);

}

}

IArea.javapackageone;public interfaceIArea {public doubleArea();

}

IPerimeter.javapackageone;public interfaceIPerimeter {public doublePerimeter();

}

IVolume.javapackageone;public interfaceIVolume {public doubleVolume();public doubleArea();

}

二.packagetwo;importjava.util.Arrays;public classQ2 {public static voidmain(String[] args) {//TODO Auto-generated method stub

String[] a=new String[20];

String b=newString();

String c=newString();

b="g";

a[0]="a";a[1]="b";a[2]="c";a[3]="d";a[4]="e";a[5]="f";a[6]="g";a[7]="h";

a[8]="i";a[9]="j";a[10]="k";a[11]="l";a[12]="m";a[13]="n";a[14]="o";for(int i=0;i<15;i++){for(int j=i+1;j<15;j++){if(a[i].compareTo(a[j])>0){

c=a[i];

a[i]=a[j];

a[j]=c;

}

}

}if(sxcz(b,a)){

System.out.println("顺序查找法已查找到");

}else{

System.out.println("顺序查找未找到");

}if(efcz(b,a)){

System.out.println("二分法查找法已查找到");

}else{

System.out.println("二分法查找未找到");

}

}public static booleansxcz(String b,String[] a){for(int i=0;i<20;i++){if(b==a[i]){return true;

}

}return false;

}public static booleanefcz(String b,String[] a){int front=0;int end=14;int mid=7;for(;end>=front;){if(a[mid]==b)return true;else if(a[mid].compareTo(b)>0){

end=mid-1;

mid=(mid+front)/2;

}else{

front=mid+1;

mid=(front+end)/2;

}

}return false;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值