一: public 可以被任何类访问
protect 同包,同类 ,子类
private 当前类
default 同类 同包
无修饰符 同包
二:
定义在类中的变量是类的成员变量,可以不进行初始化,Java会自动进行初始化
局部变量是定义在方法中的变量,必须要进行初始化,否则不同通过编译
被static关键字修饰的变量是静态的,静态变量随着类的加载而加载,所以也被称为类变量
三: 接口,比抽象类还要抽象的类。
- 接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract (只能是 public abstract,其他修饰符都会报错)。
- 接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量(并且只能是 public,用 private 修饰会报编译错误。)
- 接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法
四: 既然是实现接口,就要实现接口的所以方法,相当于重写方法,方法的重写需要满足:三同一大一小(方法名、返回值类型、形参相同;访问权限>=重写前;抛出异常<=重写前)
5. Statement在JDBC中相当于SQL语句的载体
A,Statement是最基本的用法,采用字符串拼接的方式,存在注入漏洞
B,PreparedStatement对Statement中的SQL语句进行预编译,同时检查合法性,效率高
C,CallableStatement接口扩展 PreparedStatement,用来调用存储过程,它提供了对输出和输入/输出参数的支持。CallableStatement 接口还具有对 PreparedStatement 接口提供的输入参数的支持
类的加载包括:加载,
连接(验证,准备,解析),初始化,使用。
在类加载的时候会赋予初值的是类变量,而非对象成员。