一、package:声明包
作用:避免类的命名冲突
Java规定:同一个包内类不能同名,不同包的类可以同名
类的全称:包名.类名-------包名一般具有层次结构
建议:包名所有字母均小写
import:导入类
同包内的类可以直接访问,但不同包的类不能直接访问,若想访问:
1.包名.类名
2.用import导入再使用------建议
二、访问控制修饰符
public:公开的,任何类都可访问
private:私密的,只有本类可以访问
protected:被保护的,本类,派生类,同包类可以访问
默认的:什么也不写,本类,同包类可以访问
1.Java不建议使用默认访问权限
2.类的访问权限只能是public或默认的,在类中以上四种都可以
3.访问权限从小到大依次为:private,默认的,protected,public
三、final:最终的,不能改变的--------单独应用几率低
修饰变量:变量不能被改变
修饰方法:方法不能被重写
修饰类:类不能被继承
四、static:静态的
静态变量:
以static修饰
属于类,位于方法区中,一份
常常通过类名点访问
何时用:所有对象所共享的资源(图片、音频、视频等)
静态方法:
由static修饰
属于类,存储在方法区中,一份
常常通过类名点来访问
静态方法没有隐式this,所以不能直接访问实例成员,只能直接访问静态成员
何时用:方法的操作与对象无关------------方法中不需要访问对象的属性和行为
静态块:
由static修饰
属于类,在.class字节码被加载时自动执行,因为一个类只加载一次,所以静态块也只运行一次
何时用:加载/初始化静态资源时(图片、音频、视频等)
------------补充
一、访问权限常规设置模式
数据(成员变量)私有化private
行为(方法)公开化public--------------绝大部分方法都是公开的
二、成员变量
实例变量:没有static修饰,属于对象的,存储在堆中,有几个对象就有几份
通过引用/对象打点来使用
静态对象:有static修饰,属于类的,存储在方法区中,只有一份
常常通过类名打点来访问
三、内存管理-----由JVM管理
堆:new出来的对象(包括实例变量、数组的元素)
栈:局部变量(包括方法的参数)
方法区:.class字节码文件(包括静态变量、所有方法)
四、图片
公开的 静态的 图片类型 变量名
public static ImagesIcon sea;