Java关于类定义的总结

在Java中,类是面向对象的重要内容。可以将类当做一种自定义类型,可以使用类来定义变量,使用类定义的变量叫做引用变量。

  • 定义类

类的定义格式如下:

[修饰符] class 类名 {

    零个或多个构造器定义;
    零个或多个成员变量定义;
    零个或多个成员方法定义;

}

对于修饰符而言,可以为public、final或abstract,当然也可以缺省,缺省时即我们常说的默认。至于类名,则和Java的标识符命名规则一致,或者可以说,类名是Java标识符的一种。

在类中,构造器、成员变量和成员方法都属于类的成员。其中,构造器是创建对象的关键。创建对象可以不用new,但是却不能没有构造器,因为通过反射方式也需要借助构造。当我们未手动编写构造器时,Java会默认提供一个无参的构造器。而成员变量则用来存储该类或该类实例的数据状态,方法则用来定义该类或该类实例的行为或功能。

这三个成员都可以定义零个或多个。如果三者都未定义,则视为空类。从语法上讲允许,但在实际中却意义不大。

一般情况下,类的各个成员之间的顺序可以任意指定,唯一需要注意的就是,static修饰的类无法访问非static修饰的成员变量。

  • 定义成员变量

定义成员变量的语法如下:

[修饰符] 类型 成员变量名 [=默认值];

对于修饰符可以为public、protected、private、static、final。其中,public、protected、private只能出现一个。

对于类型而言,则是Java中所允许的所有类型,也就是我们认知的基本数据类型和引用数据类型。

对于成员变量名而言,命名规则遵循Java标识符的命名规则。

对于默认值而言,我们既可以指定,也可以不指定。不指定的时候,系统会根据类型给出对应的默认值。

  • 定义方法

定义方法的语法如下:

[修饰符] 方法返回值 方法名(形参列表) {
    零条或多条可执行语句;
}

对于修饰符而言,可以为:public、protected、private、static、final、abstract。其中,public、protected、private最多只能出现其一。

对于方法返回值而言,可以是Java所允许的所有数据类型,也就是我们认知的基本数据类型和引用数据类型。如果声明了返回值,则在方法中必须包含return语句,return语句返回的既可以是一个变量也可以是一个表达式,只要该变量的类型或表达式运算后的结果的类型与返回值类型匹配(要么与返回值类型相同,要么是返回值类型的子类)即可。若不需要有返回值,则需声明返回值类型为void。

对于方法名而言,与Java标识符的命名规则 保持一致。

对于形参列表而言,由零个或多个“参数类型 参数值”组合而成,以逗号进行间隔,形参列表声明了该方法可以接受的参数。

对于方法体内的可执行语句,一般情况下是顺序执行的。

  • 定义构造器

定义构造器的语法如下:

[修饰符] 构造器名(形参列表) {
    零条或多条可执行语句;
}

对于修饰符而言,可以是public、protected、private。

对于构造器名而言,必须与类名保持一致。

对于形参列表而言,表示了该构造器所能接收的参数,由零个或多个“参数类型 参数值”组合而成,以逗号进行间隔。

需要说明一点的是,构造器是没有返回值的,或者说返回值不能由我们手动来指定。因为构造器的返回值是通过new生成的对象的地址,因此我们不能手动来指定返回值,即使是void也不允许。

虽然我们为构造器指定了返回值也能通过编译,但实际上,加了返回值的构造器已经变成了一个与类名相同的普通方法,而非构造器。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章