网站页面设计公司推荐/地推团队联系方式
02类和对象
一、类及类的成员
现实世界的生物体,大到鲸鱼,小到蚂蚁,都是有最基本的细胞不构成的。同理,Java代码世界是由诸多不同功能的类构成的。
显示生物世界中的细胞又是由什么构成的呢?细胞核、细胞质…那么,Java中用类Class来描述事物也是如此。常见的类的成员有:
- 属性:对应类中的成员变量
- 行为:对象类中的成员方法
Field = 属性 = 成员变量, Method = (成员)方法 = 函数
二、类和对象的使用
1、创建类、设计类的成员
2、创建类的对象
3、通过“对象.属性”或“对象.方法”调用对象的结构
如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性(非static)
意味着,如果我们修改一个对象的属性a,则不影响另外一个对象属性a的值。
三、对象的内存解析
- 堆(Heap),此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。这一点在Java虚拟机规划中的描述是:所有的对象实例以及数组都要在堆上分配。
- 栈(Stack),通常是指虚拟机栈(另一个是指本地方法栈)。虚拟机栈用于存储局部变量等。局部变量表存放了编译期可知长度的各种基本数据类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference类型,不等同与对象本身,是对象在堆内存的首地址)。方法执行完,自动释放。
- 方法区(Method Area),用于存储已被虚拟机加载的类信息、常量、静态变量、及时编译器编译后的代码等数据。