如何更好的隐藏你自己,让我们谈谈什么是封装?

本文围绕Java面向对象的封装特性展开,介绍了封装的定义、好处及实现步骤,还提及使用包管理类、访问修饰符和this关键字。此外,详细讲解了Java内部类,包括成员内部类、静态内部类和方法内部类的特点与使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面向对象的3大特性:封装、继承、多态

01什么是封装

1、定义:将类的某些信息隐藏在类的内部,不允许外部程序访问,只允许该类提供的方法来实现对隐藏信息的访问。
2、好处:只能通过规定的方法来访问,数据。隐藏类的实例和细节,方便修改和实现。
3、实现步骤:
在这里插入图片描述
set 赋值属性;get获得属性
参数的类型和属性相同:
见下面:

在这里插入图片描述
在这里插入图片描述

02使用包管理类

1、包的作用:
管理Java文件;解决同名文件冲突。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

03访问修饰符


通常属性用private修饰,方法public修饰。

04this关键字

**1、this关键字代表当前对象
this.属性 操作当前对象的属性
**this.方法 调用当前对象的方法
2、封装属性的时候,经常会使用this关键字
**
菜单栏里面的source可以选择get and set自动生成属性。

属相名和参数名相同,为了区分属相和参数概念,在属性前加入this关键字,此时代表参数值赋值给属性值。

04什么是java的内部类

顾名思义,内部类就是一个类里面的类,包含类的类称之为外部类。

之所以要使用内部类,主要具有以下作用:
1、内部类可以提供更好的封装,把内部类隐藏在外部类之中,不允许同一个包中的其他类访问该类。
2、内部类的方法可以直接访问外部类的所有数据,包括私有的数据。
3、内部类可以实现的功能外部类同样可以实现,只是内部类使用更方便。

内部类一共有几种?
成员内部类
静态内部类
方法内部类
匿名内部类

05成员内部类

在这里插入图片描述
运行结果为:
在这里插入图片描述
从上面的代码可以看出成员内部类的使用方法:
定义了成员内部类后,必须使用外部类来创建内部类对象,用内部类对象来调用内部类的方法。
首先要创建外部对象。生成了外部对象名后,内部类 内部对象名 = 外部类对象.new内部类(),在用内部对象名.方法名调用方法。

1、外部类不能直接调用内部类的方法,要创建内部类的对象才能通过对象名调用内部类的成员变量以及方法。
在这里插入图片描述
2、如果外部类和内部类的成员变量或方法名相同,内部类默认访问自己的成员变量或者方法,如果访问外部类的成员变量,可以使用this关键字。如下面:
在这里插入图片描述
在这里插入图片描述

06静态内部类

静态内部类就是用static修饰的内部类,特点是:
1、静态内部类不能直接访问外部类非静态成员,但可以通过new 外部类().成员实现访问。
2、如果外部静态类成员名和内部类成员相同,可以通过类名.静态成员访问外部的静态成员;
如果成员名不相同,可以通过 成员名 直接调用外部类的静态成员。
3、创建静态内部类的对象时,不需要外部类的对象,直接内部类 内部对象名 = new 内部类();
在这里插入图片描述
运行结果:
在这里插入图片描述

07方法内部类

在这里插入图片描述
定义在外部类的方法中的类叫做方法类,方法类只有在该方法中才可见并使用
因为方法类不能在外部类的方法使用,所以方法类不能用static和访问符修饰。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值