1.类声明(Class Declarations)
类是引用数据类型。类有两种类声明:普通类声明(normal class)和枚举(enum)声明。
{ClassModifier} class TypeIdentifier
{ClassModifier} enum TypeIdentifier
Java 类名的命名规则如下:
类名应该以下划线(_)或字母开头,最好以字母开头。
第一个字母最好大写,如果类名由多个单词组成,则每个单词的首字母最好都大写。
类名不能为 Java 中的关键字,例如 boolean、this、int 等。
类名不能包含任何嵌入的空格或点号以及除了下划线(_)和美元符号($)字符之外的特殊字符。
2.类修饰符(Class Modifiers)
public protected private
abstract static final strictfp
public:访问修饰符public仅适用于顶层类(top level classes)和成员类(member classes),而不是本地类(local classes)或匿名类(anonymous classes)。访问修饰符protected和private仅与直接封闭的类声明中的成员类有关。
abstract:如果类被 abstract 修饰,则该类为抽象类,抽象类不能被实例化,但抽象类中可以有抽象方法(使用 abstract 修饰的方法)和具体方法(没有使用 abstract 修饰的方法)。继承该抽象类的所有子类都必须实现该抽象类中的所有抽象方法(除非子类也是抽象类)。
static:修饰符static仅适用于成员类,不适用于顶级或本地或匿名类。
final:如果类被 final 修饰,则不允许被继承。
strictfp:使所有float或double 表达式类的声明(包括变量初始化,初始化实例,静态初始化和构造函数内)都严格遵守FP-strict的限制。
3.成员字段修饰符(Field Modifiers)
public protected private
static final transient volatile
public、protected、private:用于表示成员变量的访问权限。
static:表示该成员变量为类变量,也称为静态变量。
final:表示将该成员变量声明为常量,其值无法更改。
transient:指示变量不是对象持久状态的一部分。
volatile:Java内存模型可确保所有线程看到该变量的一致值。
可以在声明成员变量的同时对其进行初始化,如果声明成员变量时没有对其初始化,则系统会使用默认值初始化成员变量。
4.成员方法修饰符(Method Modifiers)
public protected private
abstract static final synchronized native strictfp
public、private、protected:表示成员方法的访问权限。
abstract:表示限定该成员方法为抽象方法。抽象方法不提供具体的实现,并且所属类型必须为抽象类。
static:表示限定该成员方法为静态方法。
final:表示限定该成员方法不能被重写或重载。
synchronized:在执行之前需要先获取一个监视器。
native:方法可以用平台相关的另外一种编程语言编写。
strictfp:使所有方法体中的float或double 表达式都严格遵守FP-strict的限制。
5.构造器修饰符(Constructor Modifiers)
public protected private
public、private、protected:表示构造器的访问权限。
6.对象(Object)
类名 对象名 = new 类名(); //创建对象
对象名.属性(又名:成员变量) // 访问对象的属性
对象名.行为(又名:成员方法)() // 访问对象的方法
在 Java 中,要引用对象的属性和行为,需要使用点(.)操作符来访问。对象名在圆点左边,而成员变量或成员方法的名称在圆点的右边。
7.枚举(Enum)
枚举(Enum)定义了一种Enum类型,Enum是一中特殊的 类 类型。
public, protected, private修饰符用于枚举类型的访问权限。
枚举不可以使用abstract和final关键字修饰,否则编辑器会报错,枚举是隐性地final。
enum Size { SMALL, MEDIUM, LARGE, EXTRA_LARGE };
Size m = Size.MEDIUM
枚举实际是常量,所以枚举名称应该全部大写。
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/java/javabasic/2484.html