java学习日志day09

java学习日志day09

2019年7月9日

温故知新

对象

类(属性:成员变量)、方法(成员方法,构造方法,构造代码块)

继承 extends 子类继承主类,就是代码的拓展

--------------------------
关于修饰符 static

静态变量随着类的加载(方法区的静态常量池),而加载到方法

区的京台区,静态区会对储存的静态变量进行系统默认初始值赋值

静态变量与类同级,也叫类变量,可以通过 类名.静态变量名称 调用

也可以通过创建对象调用;

静态变量所在的类,创建的所有对象都拥有唯一一个静态变量

所在区域的地址值,所有的对象共享静态变量;

所有被static所修饰的,都存放在方法区内的静态区;

当数值存入方法区后,将数值变成一个静态变量,

所有的相同属性,共享静态变量;

如果属性需要被共享,就可以用static修饰属性;不能定义在方法中;

静态变量与类同级,方法被调用里面的内容才加载执行;

静态变量不可以定义构造方法中,静态变量与类同级,构造方法与

对象同级,类优先于对象;

修饰方法(静态方法)

静态方法是随着类的加载而加载到方法区的静态区,不会对静态方法进行赋值

如果这个静态方法被调用,就会被加载到栈中执行,静态方法与类同级,

类方法,可以通过类名,静态方法也可以通过对象调用;

静态方法不可以定义静态变量,静态变量与类同级,从一开始就要加载,

静态方法里的内容需要等到调用时才能加载执行;

静态方法不能使用this,static修饰的所有都与类同级;之中不能用this;

静态方法区内不能直接调用非静态方法,不创建开辟空间的情况下;

非静态方法可以直接调用静态信息

静态方法可以直接调用静态方法;
Arrays.toString();

Arrays.sort();

Array.copyOf();

System.arraycopy()

静态方法

java中方法签名一致的方法,要么是静态方法要么都是非静态方法;

如果static 修饰代码块(静态代码块)

随着类的加载而加载,但是只加载一次,所有静态信息都只加载一次,

优先对象级别加载,可以进行静态属性初始,预先加载一些重要信息。

执行顺序:类级别(父类静态信息–子类静态信息)–对象级别(父类对象级别

(成员属性、构造代码块、构造方法))–子类对象级别(成员属性、

构造代码块、构造方法)。

final (最终)

关键字----修饰符 可以修饰 数据 类 方法

如果修饰的是基本数据类型,数据值不能改变;

如果修饰的是引用数据类型,地址值不能改变,元素值可以改变;

static final int x=1; 静态常量

如果成员变量被final修饰且没有给值,要保证在创建对象之前给值,

如果成员变量被static和final共同修饰(静态常量),要保证在类

加载完成之前给值

修饰方法 最终方法

可以重载,不能重写

修饰类(最终类),不能继承, 可以有父类

猜你喜欢

转载自blog.csdn.net/qq_31783363/article/details/95222087