多平台统一管理软件接口,如何实现多平台统一管理软件接口
300
2022-09-14
关于Java Interface接口的简单练习题
目录一、问题描述二、解决方案三、代码清单
一、问题描述
1) 定义接口Printx,其中包括一个方法printMyWay() ,这个方法没有形参,返回值为空。
2)vpgwEfY 编写矩形类Rectangle,矩形类要求实现Printx接口,有求面积、求周长的方法,printMyWay()方法要能显示矩形的边长、面积和周长。
3) 编写正方形类作为矩形类的子类,正方形类继承了矩形类求面积和周长的方法,新增加求对角线长的方法,重写printMyWay()方法,要求该方法能显示正方形的边长、面积、周长和对角线长。
二、解决方案
对于本题的解法,需要先了解java的接口知识,官方给出的解释是:官方解释:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口可以拥有方法与属性也可以继承类的属性,可以与类链接,算是比较特殊的类,但是接口中的方法又都是抽象的,不能单独进行实例化,需要与类调用结合。本题先定义一个接口' Interface ',(注意新建接口时,命名前都要加大写的'I')再在接口中使用方法'printMyWay',注意要使用void方法;然后再建立一个新的Java的类,Rectangle,建立Squera的类时要注意对父类的继承' extend',然后使用' implements'接入接口,再根据提议定义长宽,面积和周长,对定义的数据实例化,最后使用main进入Java程序,获得面积与周长。
三、代码清单
Interface接口:
package cn.edu.sctu.java20.homework.Printx;
public interface IPrintx {
void printMyWay();
}
Rectangle的类:
package cn.edu.sctu.java20.homework.Printx;
public class Rectangle implements IPrintx{
double width;
double length;
double perimeter;
double area;
public void SetLength(double width1,double length1){//传参
this.width = width1;
this.length = length1;
}
double getArea(){
area = length*width;
return area;
}
double getPerimeter(){
perimeter = length*2+width*2;
return perimeter;
}
@Override
public void printMyWay(){
System.out.println("长为:"+length+"宽为:"+width+"周长为:"+perimeter+"面积为:"+area);
};
public static void main(String[] args) {
Rectangle rectangle = new Rectangle();
rectangle.SetLength(6,4);
rectangle.getArea();
rectangle.getPerimeter();
rectangle.printMyWay();
}
}
Square
package cn.edu.sctu.java20.homework.Printx;
public class Square extends Rectangle {//继承Rectangle的属性与方法
double diagonal;
public void setDiagonal(double diagonal1){
this.diagonal = diagonal1;
}
double getDiagonal(){
diagonal = Math.sqrt(width*width + length*length);
return diagonal;
}
@Override
public void printMyWay(){
System.out.println("长为:"+length+"宽为:"+width+"周长为:"+perimeter+"面积为:"+area+"对角线为:"+diagonal);
};
public static void main(String[] args) {
Square square = new Square();
square.SetLength(6,6);
square.getDiagonal();
square.getArea();
square.getPerimeter();
square.printMyWay();
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~