提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
提示:以下是本篇文章正文内容,下面案例可供参考
创建类的对象 = 类的实例化 = 实例化类
属性 = 成员变量 = field = 域 、字段
方法 = 成员方法 = 函数 = method
如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性(非static),意味着,如果我们修改一个对象的属性a ,则不影响另外一个对象属性a的值。
将变量p1保存的对象地址赋值给p3,导致p1 p3指向了堆空间中的同一个对象实体。
如图所示:
代码块:
public class PersonTest {
public static void main(String[] args) {
//创建类的对象 = 类的实例化 = 实例化类
Person person = new Person();
person.name = "Tom";
person.age = 18;
System.out.println(person.name);
person.talk("Chinese");
Person person2 = new Person();
System.out.println(person2.name);
System.out.println(person2.ismale);
//将p1变量保存的对象地址值赋值给p3,导致p1和p3指向了堆空间中的同一个对象实体
Person person3 = person;
System.out.println(person.name);
person3.age = 10;
System.out.println(person.age);
}
}
class Person{
//属性
String name; //默认初始化值null
int age = 1;
boolean ismale; //默认初始化值false
//方法
public void eat()
{
System.out.println("人可以吃饭!");
}
public void sleep()
{
System.out.println("人可以睡觉!");
}
public void talk(String language)
{
System.out.println("人可以说话,使用的是:"+language);
}
}
堆:此内存区域唯一的目的就是存放对象实例,所有的对象实例以及数组都要在堆上分配
栈:存储局部变量,它不等同于对象本身,是对象在堆内存的首地址。

整型(byte short int long ):0
浮点型 (float double) 0.0
字符型(char),0 或\u0000
布尔型(boolean) false
引用数据类型(类、数组、接口) null
在调用局部变量之前,必须要显示赋值
形参在调用时,赋值即可。