面向对象——封装
在面向对象程序中,就是把对象的属性和操作结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。在java中主要体现为类对属性和方法的封装和方法对方法具体的实现细节的封装。通过public、protected、private等权限修饰符对外界的访问加以限制,不允许外界直接访问类内的属性和方法。
package 构造方法;
public class Circle extends Shape{
private double radius; //private修饰,不允许外界直接访问
private double pi=3.1415926;
public Circle(){
}
public Circle(double radius){
this.radius = radius;
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {//需通过get、set方法,且修改值时必须满足一定的条件
if(radius>=0)
this.radius = radius;
}
public double getArea(){
return radius*radius*pi;
}
public double getLength() {
return 2*pi*radius;
}
}
好处:
(1)防止类以内的数据和方法被随机访问(权限修饰符对访问进行了一定的限制),如果没有权限的限制就能随意访问类内的属性和方法,就有可能出现半径为负数的情况,要想修改属性值需要调用get和set方法,避免负数对半径的赋值。
(2)隐藏了方法内的具体实现细节。
转载于//www.cnblogs.com/zhai1997/p/11280869.html
还没有评论,来说两句吧...