JAVA 封装

举报
啊Q老师 发表于 2022/04/11 14:51:53 2022/04/11
【摘要】 本文章介绍了JAVA封装

封装:设置对象信息私有化,隐藏在对象内部,限制外部直接访问或调用,而通过该类所提供的方法来实现内部信息的操作或访问。

public class student 
{
    private int age ; //private访问修饰符,设置了age属性私有化,只能在本类访问。

    public int getAge(){  return age;  }  //取值

    public void setAge(int age) {  this.age = age;  }   //赋值
}

上面设置了属性私有化,又通过方法将其公开操作或访问,如此,是否多此一举呢,这就是为什么要封装?

封装的原因是:面向对象的编程语言的本质核心思想是对客观世界的模拟,所以要遵守客观事件的规则。
在客观世界里,客观对象的状态信息都是隐藏在内部的,比如:对象好比我们的家,属性比如我们家的东西,是不允许别人随便的拿和放的。这是客观事实。所以,所有对客观世界模拟的JAVA程序里的对象也要封装。

封装的优点:

1.隐藏信息,实现细节

2.类内部的结构可以自由修改

3.良好的封装能够减少耦合

4.可以对成员变量进行更精确的控制(举例说明)

public class student {
    private int age ;

    public int getAge() {return age;}

    public void setAge(int age) {
        //属性age年龄的赋值操作是通过setAge()方法实现,可以在这做进一步精确的控制
        if(age > 0 && age < 150)
            {this.age = age;}
        else
            {
                System.out.println("年龄不符客观事实!");
                this.age = 18 ; //年龄不符,默认为18岁
            }

}}

封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时保护了数据。对外界而已它的内部细节是隐藏的,暴露外界的只是它访问的方法。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。