什么是类?
类是具有相同状态和相同行为的一组对象的集合
什么是对象?
万事万物皆为对象,可以理解为具体的个体就是对象
什么是面向对象的编程?
就是只在乎结果而不在乎过程,怎么理解这句话?举个例子:如果我想吃西红柿炒鸡蛋,面向过程的思想是怎么做出这个西红柿鸡蛋,然后吃掉,而面向对象就是我吃掉就行了。
类与对象的关系:
类是对象的抽象,对象是类的具体化。
如何定义一个类?
类是由属性和方法两部分构成的,把属性和方法又叫做成员变量和成员方法,此为类中还有静态初始化器,实例初始化器,还有构造方法
本篇文章主要分析初始化的过程
package day0216;
public class InstanceDemo {
static int a = 1;
int b;
static {
System.out.println("static {}");
a = 2;
}
{
System.out.println(" {} ");
a = 3;
}
InstanceDemo() {
System.out.println(" InstanceDemo() ");
a = 4;
b = 5;
}
InstanceDemo(int n){
System.out.println("InstanceDemo(int n)");
b = n;
}
public static void main(String[] args) {
InstanceDemo instanceDemo1 = new InstanceDemo(6);
InstanceDemo instanceDemo = new InstanceDemo();
System.out.println(instanceDemo.a);
System.out.println(instanceDemo1.a);
System.out.println(instanceDemo.b);
System.out.println(instanceDemo1.b);
}
}
以上的代码运行之后的结果为
现在可以分析一下为什么会是这种结果
因为在运行的过程中执行的顺序是
- 加载类
- 静态初始化
- 实例初始化
- 构造方法
但是在执行的时候一定要注意 - 静态初始化器只在加载类的时候执行一次
- 实例初始化器在每次创建对象的时候都会执行