前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础学习-面向对象三大特征之一:封装

Java基础学习-面向对象三大特征之一:封装

原创
作者头像
FutureTester
发布2021-12-20 21:49:29
3860
发布2021-12-20 21:49:29
举报
文章被收录于专栏:FutureTesterFutureTester

什么是封装:

  • 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操做和访问
  • 隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可扩展性、可维护性。

封装的好处:

  1. 只能通过规定的方法访问数据
  2. 隐藏类的实现细节
  3. 方便加入控制语句
  4. 方便修改实现

狭义的封装:

面向对象中的封装就是将类中的属性设置为私有属性,提供共有的外部方法供程序进行调用,可以实现丰富的细节操作

例子:简单的封装,

Cat类:

代码语言:javascript
复制
package fengzhuang;

public class Cat {
    String name;
    private int age;

    public Cat(){

    }
    public void eat(){
        System.out.println("猫吃鱼");
    }
    public void setAge(int age){
        if(age>0){
            this.age=age;
        }else{
            System.out.println("年龄不规范");
        }
    }
    public void show(){
        System.out.println(this.name);
        System.out.println(this.age);
    }
}

CatDemo类:

代码语言:javascript
复制
package fengzhuang;

public class CatDemo {
    public static void main(String[] args) {
        Cat cat = new Cat();
        cat.name="毛毛";
        cat.setAge(-28);
        cat.eat();
        cat.show();
    }
}

广义的封装:

可以将完成特定功能的代码块封装成一个方法,供不同的程序进行调用

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是封装:
  • 封装的好处:
    • 狭义的封装:
      • 广义的封装:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档