Java类的定义(非常详细)
类是将数据和方法封装在一起的一种结构,数据表示为类的属性,方法表示为类的行为。
Java 中使用 class 关键字来定义类,语法格式如下:
注意:类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写,如 TestPage;如果类名称中包含单词缩写,则这个缩写词的每个字母均应大写,如 XMLDemo;还有一点命名技巧,就是由于类是设计用来代表对象的,所以在命名类时应尽量选择名词。
定义成员变量的语法格式如下:
定义成员方法的语法格式如下:
其中,“[]”中的修饰符是可选项,成员方法修饰符有 public、protected、private、default、static、final,各修饰符的含义如下表所示。
注意:形参出现在方法定义中,在整个方法体内都可以使用,离开该方法则不能使用。实参出现在主方法中,进入被调方法后,实参变量也不能使用。
参数列表中的参数用逗号分开,列表中包含了传递给调用方法的变量的声明。如果方法中没有参数,参数列表可以省略,小括号内不用填写任何内容。
若方法没有返回值,则返回值的数据类型应为 void,且 return 语句可以省略。
接下来,我们根据上面的语法格式定义一个 Dog 类。
Java 中使用 class 关键字来定义类,语法格式如下:
[类修饰符]class 类名 { [修饰符] 数据类型 属性名; … [修饰符] 返回值类型 方法名([参数列表]) { … // 方法体 return 返回值; } }其中,“[]”中的修饰符是可选项,类修饰符可以分为 4 种:public、protected、private、default,各修饰符的含义如下表所示:
修饰符 | 说明 |
---|---|
public | 将一个类声明为公共类,它可以被任何对象访问 |
default(默认) | 在同一个包中可以访问,default 不用写 |
abstract | 表示该类为一个抽象类,不能实例化该类 |
final | 表示该类不能被子类继承,该类即为最终类 |
注意:类的名字必须由大写字母开头而单词中的其他字母均为小写;如果类名称由多个单词组成,则每个单词的首字母均应为大写,如 TestPage;如果类名称中包含单词缩写,则这个缩写词的每个字母均应大写,如 XMLDemo;还有一点命名技巧,就是由于类是设计用来代表对象的,所以在命名类时应尽量选择名词。
类的成员变量
在 Java 程序中,一般将类的属性名表示为成员变量,成员变量描述了类的内部信息。成员变量可以是基本数据类型,也可以是数组、对象等引用数据类型。定义成员变量的语法格式如下:
[修饰符]数据类型 成员变量名 = [初值];其中,“[]”中的修饰符是可选项,成员变量修饰符有 public、protected、private、default、static、final,各修饰符的含义如下表所示。
修饰符 | 说明 |
---|---|
public | 指定该变量可以被任何对象的方法访问 |
protected | 指定该变量可以被该类及其子类或同一包中的其他类访问,在子类中可以重写此变量 |
private | 指定该只允许该类的方法访问,其他任何类(包括子类)中的方法都不能访问 |
default(默认) | 指定该变量可以被同一包中所有类访问,其他包中的类不能访问该变量,default不用写 |
static | 指定该变量可以被所有对象共享 |
final | 指定该变量不能被修改 |
类的成员方法
在编程中,一般将类的行为表示为成员方法,成员方法用来表示类的操作,实现类与外部的交互。定义成员方法的语法格式如下:
[修饰符]返回值数据类型 成员方法名([参数列表]) { … // 方法体 return 返回值; }
其中,“[]”中的修饰符是可选项,成员方法修饰符有 public、protected、private、default、static、final,各修饰符的含义如下表所示。
修饰符 | 说明 |
---|---|
public | 指定该方法可以被任何对象的方法访问 |
protected | 指定该方法可以被该类及其子类或同一包中的其他类访问,在子类中可以重写此方法 |
private | 指定只允许该类的方法访问,其他任何类(包括子类)中的方法都不能访问 |
default(默认) | 指定该方法可以被同一包中所有类访问,其他包中的类不能访问,default不用写 |
static | 指定该方法可以被所有对象共享 |
final | 指定该方法不能被修改 |
注意:形参出现在方法定义中,在整个方法体内都可以使用,离开该方法则不能使用。实参出现在主方法中,进入被调方法后,实参变量也不能使用。
参数列表中的参数用逗号分开,列表中包含了传递给调用方法的变量的声明。如果方法中没有参数,参数列表可以省略,小括号内不用填写任何内容。
若方法没有返回值,则返回值的数据类型应为 void,且 return 语句可以省略。
接下来,我们根据上面的语法格式定义一个 Dog 类。
class Dog { String name; // 声明名字属性 int age; // 声明年龄属性 double weight; // 声明体重属性 protected String colour; // 声明颜色属性 protected String bark() { // 定义吠叫的方法 String a = "汪汪叫"; return a; } public void show() { // 定义显示信息的方法 System.out.println("名字是" + name + ", 年龄: " + age); } }程序中定义了一个类,Dog 是类名,其中 name、age、weight、colour 是该类的成员变量,也称为对象属性,bark()、show() 是该类的成员方法,在 show() 方法体中可以直接对 name、age 成员变量进行访问。