首页 > 代码库 > 一个标准类封装的实例
一个标准类封装的实例
定义一个名为MyRectangle的矩形类,类中有4个私有的整型域,分别是矩形的左上角坐标(xUp,yUp)和右下角坐标(xDown,yDown);类中定义没有参数的构造方法和带四个参数的构造方法,用来初始化类对象。类中还有以下方法: getW( )——计算矩形的宽度;getH( )——计算矩形的高度;area( )——计算矩形的面积;toString( )——把矩形的宽、高和面积等信息作为为字符串返回。编写应用程序使用MyRectangle类。
public class MyRectangle {
//实例变量
private int xUp;
private int yUp;
private int xDown;
private int yDown;
//构造器
public MyRectangle() {
}
public MyRectangle(int xUp, int yUp, int xDown, int yDown ) {
this.xUp = xUp;
this.yUp = yUp;
this.xDown = xDown;
this.yDown = yDown;
}
//设定器
public void setXUp( int xUp ){
this.xUp = xUp;
}
public void setYUp( int yUp ){
this.yUp = yUp;
}
public void setXDown( int xDown ){
this.xDown = xDown;
}
public void setYDown( int yDown ){
this.yDown = yDown;
}
//访问器
public int getXUp() {
return xUp;
}
public int getYUp() {
return yUp;
}
public int getXDown() {
return xDown;
}
public int getYDown() {
return yDown;
}
//功能方法
//求其宽度
public int getW(){
return Math.abs( xDown - xUp );
}
//求其高度
public int getH(){
return Math.abs( yUp - yDown );
}
//求其面积
public int area(){
return this.getW() * this.getH();
}
//将对象的所有信息以字符串反馈
public String toString(){
return "已知长方形的左上角坐标为 (" + xUp + ", " + yUp + ") 和 右下角坐标为 (" + xDown
+ ", " + yDown + ") ;则其宽度w = " + this.getW() + ",高度h = " + this.getH()
+ "。因此,其面积area = " + this.area();
}
}
//测试MyRectangle类
package com.bjsxt.d22;
public class MyRectangleTest {
public static void main(String[] args) {
MyRectangle mr1 = new MyRectangle(5,15, 20, 5);
//System.out.println( "mr1,这个长方形的所有信息如下:\n" + mr1.toString() );
System.out.println("mr1,这个长方形的宽度是: " + mr1.getW() );
System.out.println("mr1,这个长方形的高度是: " + mr1.getH() );
System.out.println("mr1,这个长方形的面积是: " + mr1.area() );
}
}
一个标准类封装的实例