网站首页 > 精选教程 正文
在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也不允许。
虽然我们为构造器指定了返回值也能通过编译,但实际上,加了返回值的构造器已经变成了一个与类名相同的普通方法,而非构造器。
- 上一篇: Java 计算文件Checksum方式
- 下一篇: Java接口&异常处理&类型转换
猜你喜欢
- 2025-01-07 Java语言的数据类型详解
- 2025-01-07 Java接口&异常处理&类型转换
- 2025-01-07 Java 计算文件Checksum方式
- 2025-01-07 Java常见类型数据及其包装类-byte类型,String类型,boolean类型
- 2025-01-07 Batch批处理学习教程
- 2025-01-07 java程序员一定要学会的骚操作“Redis的五大数据类型实现原理”
- 2025-01-07 mybatis框架:配置文件中的标签详解
- 2025-01-07 JAVA学习基础之数据类型
- 2025-01-07 一文读懂Java的Class文件结构
- 2025-01-07 强推!一个项目实现所有文件类型的文件预览功能!
你 发表评论:
欢迎- 最近发表
-
- 我的世界光影MOD下载(我的世界光影mod下载安装)
- 我的世界1.7/1.8VoxelMap小地图MOD下载
- 我的世界1.7.10多世界 整合包(我的世界1.7.10forge整合包)
- 我的世界1.8最好用的修改器下载(我的世界1.8最好用的修改器下载安装)
- 我的世界更多弯曲动作MOD下载(我的世界更多弯曲动作mod下载手机版)
- 我的世界龙珠MOD下载(我的世界龙珠模组整合包下载)
- 我的世界1.7.10以太2 下载(我的世界以太2mod1.12.2)
- 我的世界虚拟人生MOD下载分享(我的世界虚拟人生下载安装)
- 我的世界无正版账号的简单联机方法(非网易版,仅适用于局域网)
- “我的语言极限,即是我的世界的极限。” ——《On Java》书籍推荐
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)