1.包
1)包的作用
包就是文件夹。用来管理各种不同功能的Java类,方便后期代码维护。
2)包名的书写规则
包名规则:公司域名反写+包的作用,需要全部英文小写,见名知意。
3)什么是全类名
包名+类名->用来区分当前的类到底是哪个包里面的。
4)什么时候需要导包
·使用同一个包中的类时,不需要导包。
·使用java.lang包中的类时,不需要导包。
·其他情况都要导包
·如果同时使用两个包中的同类名,需要使用全类名。
2.final
1)被final修饰后,就不能再进行改变。
2)final可以修饰方法,类,变量。
-被final修饰后的方法,表明该方法是最终方法,不能被重写。
-被final修饰后的类,表明该类时最终类,不能被继承。
-被final修饰后的变量,叫做常量,只能被赋值一次。
3)常量:实际开发中,常量一般作为系统的配置信息,方便维护,提高可读性。
常量的命名规范:
·单个单词:全部大写
·多个单词:全部大写,单词之间用下划线隔开
-final修饰的变量是基本数据类型 :那么变量存储的数据值不能发生改变。
final修饰的变量是引用数据类型 :那么变量存储的地址值不能发生改变,对象内部的可以改变。
3.权限修饰符
用来控制一个成员能够被访问的范围。可以修饰成员变量,方法,构造方法,内部类。
权限修饰符的分类,有四种作用,范围由小到大(private<空着不写[缺省/默认]<protected<public)

private只能自己用,默认的只能本包用,protected除了本包外面其他包里面的子类还能用,public都能用。
权限修饰符的使用规则:
-实际开发时,一般只会使用private和public,成员变量私有,方法公开。
特例:如果方法中的代码时抽取其他方法中共性代码,这个方法一般也私有。
4.代码块
1)局部代码块
{}作用:提前结束变量的生命周期
2)构造代码块
-写在成员位置的代码块
-作用:可以把多个构造方法中重复的代码抽取出来
-执行时机:在创建本类对象的时候会先执行构造代码块再执行构造方法
3)静态代码块
格式:static{}
特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次
一般在数据初始化使用。
5.抽象类和抽象方法
5.1抽象方法与抽象类的介绍
抽象方法:将共性的行为(方法)抽取到父类之后,由于每一个子类执行的内容是不一样的,所以在父类中不能确定具体的方法体,该方法就可以定义为抽象方法。
抽象类:如果一个类中存在抽象方法,那么该类就必须声明为抽象类
5.2抽象方法与抽象类的定义格式
抽象方法的定义格式:public abstract 返回值类型 方法名(参数列表);
抽象类的定义格式:public abstract class 类名{}
5.3注意事项
-抽象类不能实例化
-抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
-可以有构造方法
-抽象类的子类-要么重写抽象类中的所有抽象方法,要么是抽象类