目录
- 封装的概念
- 常见的一些包
- 静态成员变量
- 代码块
封装的概念
可以理解为套壳屏蔽细节,将数据和操作数据的方法进行有机的结合,隐藏对象的属性和实现细节,仅对外公开接口和对象进行交互
从语法的层面来理解就是,被private修饰的成员变或者成员方法,只能在当前类中使用,但是可以通过set以及get进行间接访问
例如
private String name;public void setName(String name) {this.name = name;}public String getName(){return this.name;}
像这上面就是,我们虽然是用private修饰的name,但是我们可以通过setname以及getname访问到
像上面的这幅图,就是访问修饰限定符的范围,其中default是默认的,就是我们在创建的时候不写访问修饰限定符,就默认是default
常见的一些包
java.lang://系统常用基础类(String,Object)
java.lang.reflect//java反射编程包
java.net://进行网络编程开发包
java.sql://进行数据库开发的支持包
java.util://java提供的工具程序包(集合类等),非常重要
java.io://1/0编程开发包
静态成员变量
就是可以理解为,A和B是一个班的同学,那这个班级对他们两个来说就是都拥有的,就是静态成员变量
注意点
1>静态成员变量不属于对象
2>输出静态成员变量直接通过类名输出与访问(静态成员变量在方法区中储存,伴随类产生和销毁)
System.out.println(student.classRoom);
如果是在普通方法中,name的调用是需对象的引用来调用的
但是上图中,func这个静态方法,直接通过类名就能调用,不依赖于对象,所以这样写会报错
以及静态方法中,不能调用非静态的成员变量和方法
代码块
1>普通代码块
2>构造块
3>静态块
4>同步块
2>构造块: 创建对象的时候才会执行
{
System.out.println(“构造块”);
}
3>静态块: 一般用来初始化静态成员
static{
classRoom = “三年二班”;
System.out.println(“这个为静态块”);
}
执行顺序: 1>静态先执行,再执行构造块,再执行对应的构造方法
2>静态只执行一次