*
Java基础static,代码块,继承的学习总结
Java关键字(重点)
静态变量(重点)
访问格式: 类名的访问 对象名的访问
内存特点:内存只有一份
类加载时,静态变量就会在内存出现
静态变量被所有对象共享使用
在线人数,国籍学校等这些共享的数据,可以考虑设计成静态
.静态方法
调用格式:
类名访问(推荐)
对象名访问
使用注意:
静态方法只能访问静态变量
静态方法不能使用this和super等代表对象的关键字
应用场景:
工具类的设计
代码块(了解):
构造代码块
格式:{ }
执行时机:每次调用构造方法时,都会执行构造代码块
作用:可以将多个构造方法中相同的代码抽取到构造代码块中,复用代码
静态代码块:
执行时机:类加载时执行,而且只会执行一次
应用场景:如果类加载时,需要完成某些数据的初始化,就可以使用静态代码块
继承(重点)
格式:
public class 子类 extends 父类
特点:
java类只能支持单继承,运行多层间接继承不能继承的成员:
父类的构造方法不能被继承。
父类私有的方法不能被继承。
父类私有的成员变量可以被继承,但是无法被直接访问
继承关系下,对父类和子类中同名的变量和方法的访问:
遵循就近原则
可以使用super,明确的访问父类成员 super父类变量 super父类方法()
方法重写:
子类对继承下来的方法的重新实现
方法重写的规则:
不变 方法名和参数
可以变化 权限可以更大 返回值类型可以范围更小
实际开发中,通常会保持整个方法的格式不变,重新实现内容就可以。
外壳不变,内核重写
@Override注解,可以检测重写的语法是否正确
在子类中调用父类的构造方法:
创建子类对象时,会默认调用父类的无参构造方法
调用父类的带参构造方法:super(参数)
this和super的区别:
this代表本类的对象,可以访问本类的成员
super代表父类的内存空间,可以访问父类的成员