0

0

Java类与对象的基本概念与定义

P粉602998670

P粉602998670

发布时间:2026-01-08 14:03:08

|

766人浏览过

|

来源于php中文网

原创

java中类是编译器识别的模板,对象是new创建的实例;类名须pascalcase且不能为关键字;构造方法名须与类名一致;static成员属类,实例成员属对象。

java类与对象的基本概念与定义

Java 中的类与对象不是抽象概念,而是编译器可识别、JVM 可执行的具体结构。类是模板,对象是实例;没类就 new 不出对象,没对象就调用不了非静态成员。

类的定义必须包含 class 关键字和合法标识符名

类定义以 class 开头,后接类名(遵循 PascalCase),不能是关键字(如 intclass 自身)、不能含空格或特殊符号。类体用 {} 包裹,即使为空也不能省略。

class Person {
    String name;
    int age;
}

常见错误包括:

  • class Person {} 写成 Class Person {}(大小写敏感)
  • 类名用下划线 person_info 或数字开头 2ndPerson,编译直接报错 error: class, interface, or enum expected
  • 在方法内部定义类(非静态嵌套类除外),会触发 error: illegal start of type

对象创建依赖 new + 构造方法调用

对象不是声明出来的,是运行时通过 new 运算符在堆上分配内存并初始化得到的。哪怕类没显式写构造方法,编译器也会插入一个无参默认构造方法;一旦写了任意构造方法,这个默认构造就消失。

Person p1 = new Person(); // 调用默认构造
Person p2 = new Person("Alice", 30); // 调用自定义构造

容易踩的坑:

PHP Apache和MySQL 网页开发初步
PHP Apache和MySQL 网页开发初步

本书全面介绍PHP脚本语言和MySOL数据库这两种目前最流行的开源软件,主要包括PHP和MySQL基本概念、PHP扩展与应用库、日期和时间功能、PHP数据对象扩展、PHP的mysqli扩展、MySQL 5的存储例程、解发器和视图等。本书帮助读者学习PHP编程语言和MySQL数据库服务器的最佳实践,了解如何创建数据库驱动的动态Web应用程序。

下载

立即学习Java免费学习笔记(深入)”;

  • Person p; 只是声明引用变量,此时 p == null,访问 p.nameNullPointerException
  • 构造方法名拼错(比如写成 persom()),它就变成普通方法,new Person() 找不到匹配构造,编译失败
  • 构造方法里调用 this(...) 必须是第一行,否则报 error: call to this must be first statement in constructor

实例成员 vs 静态成员:生命周期和访问方式完全不同

static 修饰的字段或方法属于类本身,在类加载时初始化,所有对象共享一份;不加 static 的才是实例成员,每个对象独立拥有。

class Counter {
    static int count = 0;  // 类变量,所有 Counter 对象共用
    int value = 0;         // 实例变量,每个对象一份
    static void incCount() { count++; } // 静态方法只能访问静态成员
    void incValue() { value++; }          // 实例方法可访问两者
}

典型误用:

  • 在静态方法(如 main)中直接访问 value,报 error: non-static variable value cannot be referenced from a static context
  • 把本该每个对象独立的状态(如用户 ID、连接句柄)声明为 static,导致多对象间互相覆盖
  • new Counter().count 访问静态字段——语法合法但语义误导,应统一用 Counter.count
类和对象的边界其实很硬:类决定“能有什么”,对象决定“此刻是什么”。很多运行时异常(比如 NPE、NoClassDefFoundError)都源于混淆了这两层——要么忘了 new,要么在类还没加载时就试图用它的静态成员。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

254

2023.09.22

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

1089

2024.03.01

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1566

2023.10.24

Go语言中的运算符有哪些
Go语言中的运算符有哪些

Go语言中的运算符有:1、加法运算符;2、减法运算符;3、乘法运算符;4、除法运算符;5、取余运算符;6、比较运算符;7、位运算符;8、按位与运算符;9、按位或运算符;10、按位异或运算符等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

241

2024.02.23

php三元运算符用法
php三元运算符用法

本专题整合了php三元运算符相关教程,阅读专题下面的文章了解更多详细内容。

148

2025.10.17

counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

203

2023.11.20

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

492

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

382

2023.10.25

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

3

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kotlin 教程
Kotlin 教程

共23课时 | 4.3万人学习

C# 教程
C# 教程

共94课时 | 11.1万人学习

Java 教程
Java 教程

共578课时 | 80.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号