目录
this关键字
- this关键字代表当前对象
- 使用this关键字引用成员变量
- 使用this关键字引用成员方法
在一个类的方法或构造方法内部,可以使用“this.成员变量名”这样的 格式来引用成员变量名,常常用来区分同名的成员变量和局部变量。
static关键字
- 随着类的加载而加载
- 优先于对象存在
- 修饰的成员,被所有对象所共享
- 可不创建对象,直接被类调用
static被称为静态,可以用来修饰类的属性,方法,代码块,内部类。
ublic class Chinese{
String name ;//姓名——非静态属性
static String country;//国家——静态属性,static修饰符
}
- static方法可以使用对象调用,也可以直接用类名调用,建议用类名直接调用
- 在static方法内部只能访问类的static属性,不能访问类的非static属性,static属性先加载
代码块
代码块在类中声明,类似一个没有名称的方法体(代码块),代码分实例块和静态块
实例块:每次创建对象时自动调用
{
//任何符合语法的Java代码
}
静态块:类加载时自动调用,仅一次,与是否创建对象无关。
static{
//任何符合语法的Java代码
}
实例代码块会优先于构造方法
Java代码运行顺序:
开始 --> 父类的静态代码块 --> 子类的静态代码块 --> 父类的普通代码块 --> 父类的构造方法
--> 子类的普通代码块 --> 子类的构造方法 --> 结束
包
- 为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。
包的作用:
- 避免类重名
- 按照不同功能管理类
- 控制访问权限
包(package)的命名规范:
- 在包名中,可以使用.号来区分包的级别;包名一般情况下是小写
- 第一级 指该项目的类型,如com,org,gov等,
- 第二级 指项目所开发或者运行的公司名称,如:oracle,sun,huawei 等
- 第三级 指项目的名称,如:bcms,oa,erp,cms等
- 第四级 指项目模块的名称,如:bean,action,exception等
● 包可以更好得管理逻辑相关的类,可以控制不同包之间的访问权限
● 导入外部包的类,关键字“import”
访问权限修饰符
●Java语言有四个权限访问修饰符,权限从大到小依次为:
- public :公共权限 修饰类、属性、方法。可以被任意类访问
- protected:受保护的权限 修饰属性、方法。 可以被同包类访问,如果不是同包类,必须是该类的子类才可以访问
- default:同包权限 修饰类、属性、方法。只能被同包的类访问
- private:私有权限 修饰属性、方法。 只能在本类中访问
权限大小如图所示: