final:
final是最终修饰符,可以修饰类、成员方法、变量。 final修饰的类无法被继承。 final修饰的方法无法被重写。 final修饰的变量无法被再次赋值,变为了常量。final修饰的引用数据类型变量,可以修改对象里面的属性内容,不可改变地址值
final修饰的成员变量,不能使用默认值,没有意义,必须在创建对象之前完成赋值。static: 静态修饰符,被static修饰的内容属于类不专属于某个对象,多个对象共享使用这一个成员 使用static修饰的成员可以用类名直接访问,建议这样使用: 类名.静态方法名(参数); 类名.静态属性名; 静态修饰的成员只能直接访问静态修饰的成员,不能出现this、super,因为类是优于对象产生
内部类的概念:定义在一个类的内部的一个类叫内部类 分为:成员内部类与局部内部类匿名内部类: 是局部内部类的一种 匿名内部类完成两件事: 1:定义了一个类型的匿名子类 2:定义类后,即刻创建了该类对象 目的:为了创建某个类的子类对象 格式:new 父类/接口() { 重写方法 };包:软件组织文件的基本方式,用于将相同功能的类放到同一个包下,方便管理 在类的最前边使用package定义类所在包,注意:声明的package包必须与这个文件所在的文件夹一致包的访问:(前提 类用public修饰) 同一个包下,随意访问 不同包下: 可以直接使用全名使用 为了方便,可以选择导包后,再直接使用类名本身,不加包名 在package后,class前使用import导入类 如果是lang包下的类,可以不导包,直接使用访问权限: 见文档表格代码块:一块执行代码的区域 构造代码块:每次创建对象调用 静态代码块:第一次创建对象调用,再创建其他对象时不再重复调用 第一次访问静态成员 也会调用
类加载就会执行一次