前言
01篇讲了类的实例化,对象的初始化,和相关的拓展,这篇我们继续,对,访问修饰限定符,包,封装,static,等进行学习。
一.封装
面向对象语言(oop)有三大特性:封装,继承,多态。在类和对象阶段,主要研究封装性质
1.概念:
封装:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互
二.访问修饰限定符
当被访问修饰限定符修饰的时候,在语法上说,例如private修饰的成员变量或方法,不能再类外被调用
这时候,我们可以通过公开的方法set ,get方法对封装的成员进行修改,和获取
1. Java主要通过类和访问权限来实现封装;
- 类可以将数据以及封装数据的方法结和在一起
- 访问权限用来控制方法或者字段能否直接在类外使用
三.包的概念
在面向对象的体系中,提出了,一个软件包的概念,:为了更好的管理类,把多个类收集在一起成为一组,称为软件包
在Java中,包是对类,接口等封装机制的体现,是一种对类或者接口等很好的组织方式
注意:在同一个工程中允许存在相同名称的类,只要处在不同的包中就行
1.1导入包中的类
在Java中,已经提供了许多类,比如:java,util,Date 导入java.util 这包中的 Date类
其实就是一个文件夹下的一个类
通过 import 语句进行导入
可能会出翔两个包中都有Date类会出现歧义,所以就有在包后面加*号
也可以是用import static 导入包中静态方法和字段
1.2也可以自定义包,
四。static
static修饰的成员变量还是成员方法,不是对象了,不能通过对象,调用了,用类名去访问。
存储在方法区中。
静态方法中不能调用非静态的成员变量和方法 ,也就是说不包含this
static成员变量初始化:
静态成员变量的初始化分为两种,:就地初始化,和 静态代码初始化
1.就地初始化
是指L在定义是就直接给出初始值
2. 静态代码初始化
五,.代码块
使用{}定义的一段代码称为代码块,分为:
- 普通代码块
- 构造块
- 静态块
- 同步代码块
1.普通代码块
如普通的方法
2.构造块
实例化对象的时候就会调用
3.静态块
- 一般用来初始化静态成员
- 只要调用静态成员变量,就会调用代码块
- 先执行且只执行一次
总结
这篇有点shui 哈,