JAVA 【封装】

面向对象的三大特性:封装,继承,多态。

在面向对象阶段中,主要研究的就是封装,那么什么是封装呢?封装就是对类的实现细节进行了隐藏,对外只提供一些交互的接口。有了这些概念,我们来看下面的一张图:

 一.访问限定修饰符

 java中主要通过类和访问权限实现封装,类可以将数据以及封装数据的方法结合在一起,访问权限用来控制方法和变量能否在类外使用,java中提供了以上四种访问限定符。下面将一一介绍:

public:public的权限非常大,可以理解为一个人的外貌特征,谁都能看到,谁都能访问。

protecte:protected主要用在继承中,不管在不在类外或者在不在同一包,只要是子类都能访问。

默认的:默认的就是什么都不写,也叫包访问权限,只要在同一个包都能访问。

private:private的权限是最小的,只能在当前类中访问使用。

 二.static修饰

由static修饰的成员,叫静态成员变量,也可以叫类成员,并不属于某个具体的对象,是所有对象共享的。

静态成员变量的特性:

1.它不属于某个对象,归类管。

2.它既可以用对象的引用来访问,也可以用类名来访问,但我们更推荐用类名访问。

3.生命周期:随着类的加载而创建,类的卸载而销毁。

4.类变量存储在方法区。

 

 三.stati成员变量初始化

注意:静态成员变量一般不通过构造方法初始化,构造方法一般用来初始化当前对象的成员变量。

静态成员初始化分两种:就地初始化和静态代码块初始化。

就地初始化:在创建变量的同时赋值。

代码块是啥?我们接着往下看:

 四.代码块

1.普通代码块:定义在方法内的代码块

 2.构造代码块:定义在类中的代码块(不加修饰符),也叫非静态的代码块和实例代码块,它的作用是用来初始化实例成员变量,这个很少用,一般要初始化实例成员,我们都用构造方法,值得注意的是构造代码块比构造方法要先执行。

3.静态代码块:静态代码块是用来初始化静态成员变量的。

 

注意事项:

静态代码块不管生产多少个对象,其只会执行一次。

实例代码块只有实例化对象的时候才会执行。

如果包含多个静态代码块,在编译期间,会按照定义的前后顺序依次执行。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaocaiji_k

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值