java中声明类用class关键字加类名和花括号定义结构,创建对象用new在堆中分配内存、调用构造方法并返回引用;变量存栈中,指向堆中对象,未初始化为null。

在Java中,类是对象的模板,对象是类的具体实例。声明一个类就是定义它的结构和行为,而使用new关键字创建对象,则是在堆内存中为该对象分配空间并调用构造方法完成初始化。
如何声明一个Java类
类声明以class关键字开头,后跟类名(首字母通常大写),再用一对花括号包裹成员变量和方法。
- 类名应符合标识符规则,推荐使用驼峰命名法,如
Student、BankAccount - 类体中可包含:字段(成员变量)、构造方法、普通方法、静态方法、内部类等
- 访问修饰符(如
public)决定类的可见性;若不写,默认为包级私有
示例:
public class Person {String name;
int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
如何创建对象并用new分配内存
使用new操作符会触发三步动作:在堆中分配内存 → 调用构造方法初始化 → 返回对象引用(地址)给变量。
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
- 语法格式:
类名 对象名 = new 类名(参数); - 变量本身存放在栈中,保存的是堆中对象的引用(不是对象本体)
- 每次
new都会生成一个独立对象,彼此互不影响
示例:
Person p1 = new Person("Alice", 25);Person p2 = new Person("Bob", 30);
此时p1和p2指向堆中两个不同的Person实例,修改其中一个的name不会影响另一个。
声明变量与创建对象可以分开进行
声明引用变量只是告诉编译器“将来要指向某个类的对象”,并不分配对象内存;真正分配发生在new执行时。
- 先声明后创建:
Person p;→p = new Person("Tom", 22); - 未初始化的引用变量默认值为
null,直接调用其方法会抛出NullPointerException - 一个变量可多次赋值新对象,原对象若无其他引用,将被垃圾回收器清理
常见误区提醒
-
Person p = new Person();中的p不是对象,而是指向对象的引用 - 类名首字母大写是约定,但不是语法强制;不过违反会影响可读性和协作
- 没有
new就无法得到真正的对象实例——仅声明类或变量不会触发内存分配 - 构造方法名必须与类名完全一致,且没有返回类型(连
void都不能写)
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










