3分钟带你理解封装

原创 2018年04月15日 00:00:00

在上一篇文章梗叔带大家了解了一下Java中类和对象的概念,那么本篇文章梗叔就带大叫了解一下面向对象的一个特征--封装

640?wx_fmt=png&wxfrom=5&wx_lazy=1


封装:

1、概念,将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。


2、好处:

    a.只能通过规定的方法 访问数据

    b.隐藏类的实例细节,方便修改和实现 


3、封装的实现步骤


3.1修改属性的可见性 (操作:设为private)

3.2创建getter/setter方法(目的:用于属性的读写)

3.3在getter/setter方法中加入属性控制语句(目的:对属性值的合法性进行判断)

        <代码演示/>

640?wx_fmt=png&wxfrom=5&wx_lazy=1


访问修饰符

private              作用: 本类

默认(缺省)   作用:同包

protected         作用: 本类 同包 子类

public               作用:所有(本类、同包、子类、其他)


this关键字

1、this关键字代表当前对象

        this.属性 操作当前对象的属性

        this.方法 调用当前对象的方法

2、封装对象的属性的时候,经常会使用this关键字


tips:使用eclipse自动生成get()和set()方法:

第一步:在eclipse中右键菜单可以选择Source

第二步:Generate Gethers and Setters


Java中的内部类

内部类(Inner Class)就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。


内部类的主要作用:

1、内部类提供了更好的封装,可以把内部隐藏在外部之内,不允许同一个包中的其他类访问该类

2、内部类的方法可以直接访问外部类的所有数据,包括私有的数据。

3、内部类所实现的功能使用外部类同样可以实现,只是有时候使用内部类更加方便。


内部类有哪几种呢?

- 成员内部类

- 静态内部类

- 方法内部类

- 匿名内部类



长按二维码关注

640?wx_fmt=jpeg

「关注科技梗,分享有趣的编程知识」



版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wyC1K04BLoQyJ/article/details/79956008

3分钟带你玩转React Native研发所有调试技巧

原文地址 http://www.52learn.wang/archives/1071 1、React Native Dev tool的安装 在利用Chrome调试之前,首先需要在Chr...
  • shan1991fei
  • shan1991fei
  • 2017-02-07 10:08:35
  • 1812

C# - 深入理解C#的装箱和拆箱

装箱和拆箱是值类型和引用类型之间相互转换是要执行的操作。 1.装箱在值类型向引用类型转换时发生 2.拆箱在引用类型向值类型转换时发生光上述两句话不难理解,但是往深处了解,就需要一些篇幅来解释了。我们...
  • honey199396
  • honey199396
  • 2016-08-31 11:28:19
  • 201

3分钟带你理解类和对象

今天梗叔就和大家聊一聊Java语言中的面向对象,我们在学习Java之前就有所耳闻Java是面向对象编程。咳!咳!~梗叔在编程之前也瞻前顾后没有对象编毛线个程序。。。不过学了Java之后你就不用愁对象了...
  • wyC1K04BLoQyJ
  • wyC1K04BLoQyJ
  • 2018-04-13 00:00:00
  • 4

30分钟带你快速入门MySQL教程

这是一篇真正适合初学者的MySQL数据库入门文章,哪怕你从来没有接触过数据库,或者说你从来没有听说过有数据库这东西,请一定要相信我,我当时就是这么过来的。 如果你刚开始接触MySQL数据库,或者你需...
  • baidu_21833433
  • baidu_21833433
  • 2017-02-27 16:48:49
  • 340

带你全面了解XSS

  • 2017年12月04日 11:12
  • 2.53MB
  • 下载

JDK1.8逐字逐句带你理解ConcurrentHashMap(3)

引言这篇是介绍ConcurrentHashMap的第三篇,第一篇主要介绍了在jdk1.8中所用到的一些关键知识点,第二篇主要学习了ConcurrentHashMap的组织结构与线程安全的实现,同时介绍...
  • u012403290
  • u012403290
  • 2017-03-30 15:39:10
  • 1304

3分钟带你了解区块链

  • 2018年02月05日 15:19
  • 52B
  • 下载

Android -- 带你一点点封装项目 MVP+BaseActivity+Retrofit+Dagger+RxJava(三)

1,这一篇博客是和大家一起来封装我们最后的Dagger2,其实之前也写过关于简单的Dagger2,这里是地址,完全没了解的同学可以先去看一下这篇,感谢很多小伙伴一直在耐心的等待这一篇 2,Dag...
  • duzanuolu
  • duzanuolu
  • 2017-03-19 02:49:22
  • 300

学习Docker之10张图带你深入理解Docker容器和镜像

刚开始接触Docker之后,就对容器和镜像的概念有所迷惑,上一篇也简单的说了一下之前的见解,其实并不准确,在之后的学习中再加上网上找的资料,发现了下面的这一片博文,一定要多看几遍,看完思考再看,就会对...
  • qqHJQS
  • qqHJQS
  • 2018-01-27 22:24:26
  • 129

【 全干货 】5 分钟带你看懂 Docker !

Docker,近两年才流行起来的超轻量级虚拟机,它可以让你轻松完成持续集成、自动交付、自动部署,并且实现开发环境、测试环境、运维环境三方环境的真正同步。本文从Docker定义,作用,技术架构,安装和使...
  • pushiqiang
  • pushiqiang
  • 2017-11-19 19:14:27
  • 320
收藏助手
不良信息举报
您举报文章:3分钟带你理解封装
举报原因:
原因补充:

(最多只允许输入30个字)