- 三大特征:
- 1:封装(Encapsulation);
2:继承(Inheritance);
3:多态(Polymorphism); - 具有相同特性(状态)和行为(功能)的对象的抽象就是类。类实际上就是一种数据类型。
- 匿名对象:没有被任何变量所引用
-
类的成员(在方法区):方法、字段、代码块
-
构造器的作用:
1):创建对象
2): 初始化
构造器的特点:
1):构造器的名称和当前所在类的名称相同.
2):禁止定义返回类型,千万不要使用void作为返回类型.
3):在构造器中,不需要使用return语句.
其实构造器是有返回值的,返回的是当前创建对象的引用this.4.默认构造器的特点:public修饰符随类;无参数的.;无方法体. 可以重載
-
static修饰符的特点:
1):static修饰的成员(字段/方法),随着所在类的加载而加载.
当JVM把字节码加载进JVM的时候,static修饰的成员已经在内存中存在了.
2):优先于对象的存在.
3:satic修饰的成员被该类型的所有对象所共享.
4):直接使用类名访问static成员
类成员和实例成员的访问 :
类中的成员:字段,方法,内部类.
类成员: 使用static修饰的成员.
实例成员: 没有使用static修饰的成员.
static的真正作用:用来区别字段,方法,内部类,初始化代码块是属于对象还是属于类本身。
类名只能访问类成员,对象只能访问实例成员.
在static方法中,只能调用static成员,非static方法,可以访问静态成员,也可以访问实例成员.
- 成员变量: 全局变量/字段直接定义在类中,方法外面.
1):类成员变量. 使用static修饰的字段.
2):实例成员变量. 没有使用static修饰的字段.
局部变量: 变量除了成员变量,其他都是局部变量.
1): 方法内部的变量.
2):方法的形参.
3):代码块中的变量,一对{}. - 成员变量: 默认是有初始值的(看图)
局部变量: 系统不默认初始化,所以必须先初始化才分配内存 - 变量的作用域:
定义的位置决定作用域,看变量所在的那对{}.
成员变量: 在整个类中都有效.
局部变量: 在开始定义的位置开始,到紧跟着结束的花括号为止. - 变量的作用域决定了变量的生命周期
- 局部变量不属于任何类或实例,因此它总是保存在其所在方法的栈内存中。