目录
4、只要没在构造方法中给实例变量赋值,那么实例变量都是系统默认值。
1、类和对象
类:对某一类事物共同特征的抽象。
对象:具体的事物。
实例:对象的别称。
实例化:通过类创造对象的过程。
抽象:抽取事物共同特征的过程。
类 = 属性 + 方法
属性对应特征
方法对应动作
2、类的定义方式
[修饰符列表] class 类名{
类体;
}
notes:局部变量必须先声明,再赋值,才能使用。
对于成员变量,如果没有赋初值,会有默认值
类型 默认值
byte 0
short 0
int 0
long 0L
float 0.0F
double 0.0
char \u0000
boolean false
String null
3、对象的创建语法
new 类名();
注意:数据类型 s = new 类名(); 其中s是变量名,不是对象。new 类名()才是创建对象
s这个局部变量叫引用
引用:存储了对象内存地址的变量叫引用。
![引用的本质](https://i-blog.csdnimg.cn/blog_migrate/5de6ecdebc33f551133ff2623eebacd6.png)
4、什么是实例变量?
-
对象称为实例,实例变量依存于对象,对象存在它才存在。
-
没有被static修饰的变量。
-
对象级别的变量,需要new出对象来,才可以使用。
-
成员变量之一。
notes:成员变量分为
实例变量
静态变量(使用static修饰的变量)
5、Java中,赋值本质上只有一种传递方式——值传递方式。注意:引用传递也是值传递的一种,只不过传递的是地址。
6、引用既可以是局部变量,也可以是成员变量。
7、在一个类的方法中,也可以new本类。
8、NullPointerException(空指针异常)
例子:
编译可以通过,运行出错。
1、空指针异常出现的条件是
当使用“空引用”去访问与对象相关的数据时就会出现。
与对象相关的包括:实例对象+实例方法
9、构造方法(Constructor)\构造器\构造函数
1、什么是构造方法?
定义:用来创建对象,并且初始化对象属性的方法。
notes:
当类中没有提供构造方法时,系统默认提供一个无参的构造方法(缺省构造器)。
当类中提供了构造方法时,缺省构造器会自动消除,除非在类中写下出来。
2、构造方法语法
[修饰符列表] 类名(形式参数列表){
构造方法体;
}
3、构造方法支持重载
4、只要没在构造方法中给实例变量赋值,那么实例变量都是系统默认值。
5、实例变量在调用构造方法时初始化。
10、一个类中可以写些什么?
class 类名{
实例变量;
实例方法;
静态变量;
静态方法;
构造方法;
静态代码块;
实例语句块;
}