面向对象的特征:封装与隐藏

问题:当创建了类的对象以后,如果直接通过“对象.属性“的方式对相应的对象属性赋值的话,可能出现不满足实际情况的意外,我们考虑不让对象来直接作用属性,而是通过”对象.方法“的形式,来控制对属性的访问,实际情况中,堆属性的要求可以通过方法来实现。

解决的方法:(封装性的思想)将类的属性私有化,提供公共的方法(setter & getter)来实现调用。

classAnimal{

//    属性私有化,提供公共的方法来调用

privateStringname;

private intleg;

//获取属性

publicStringgetName() {

returnname;

}

//设置属性

public voidsetName(String name) {

this.name= name;

}

public intgetLeg() {

returnleg;

}

public voidsetLeg(intleg) {

this.leg= leg;

}

public voideat(){

System.out.println(this.name+"吃食物");

}

public voidsleep(){

System.out.println(this.name+"睡觉");

}

public voidinfo(){

System.out.println("名称:"+name+"\t"+"腿的个数:"+this.leg);

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容