专业的JAVA编程教程与资源

网站首页 > java教程 正文

java程序员必备的基础知识_java面向对象之封装(一)

temp10 2024-11-13 12:42:07 java教程 11 ℃ 0 评论

二、面向对象之封装(encapsulation)

1、class和对象

java程序员必备的基础知识_java面向对象之封装(一)

第一步:我们要造车了,必须有个造车的说明书。

第二步:根据说明书,造一百辆车。

其实说明书就是在描述车的具体信息,就是对信息的封装。

public class Car {

// 汽车的型号

String brand;

// 汽车的颜色

String color;

// 汽车的长度

long length;

}

你看,这是不是用汽车的基本信息封装了一个汽车的说明,这叫做类,就是汽车类,一个描述汽车的类。

再看看,我们是怎么根据说明书去构建具体的汽车的,每个具体的汽车我们称之为一个【实例对象】。

public static void main(String[] args) {

Car car1 = new Car();

car1.brand = "本田";

car1.color = "red";

car1.length = 4120;


Car car2 = new Car();

car2.brand = "宝马";

car2.color = "white";

car2.length = 5087;


Car[] cars = {car1,car2};

}

所以明白了吗?

Car是类,只有一份。

car1、car2...car100是根据类构建出来的【实例对象】,可以有很多个。

2、多出来的数据类型

划重点了:

1、之前我们学习的八种基础数据类型,这些数据是直接存在栈中的。

2、从今天开始,我们的数据类型就多了,汽车是一种数据类型, 大炮是一种数据类型,美女是一种数据类型,所有的类都是数据类型,我们统称为:【引用数据类型】。

此刻起,我们可能才真正地开始了解class这个关键字,他就是用来创建一个类。

像car1、car2、cars这些叫引用,它是指向内存中的一块区域。存放这些实例对象的空间,我们称之为堆。

不妨我们看看,这个【车队】在内存中的结构图:

小知识:

类型指针一般为4字节,在关闭压缩普通对象指针时( -XX:+UseCompressedOops)为8字节,UseCompressedOops默认是开启的,只有虚拟机内存达到32G以上,4个字节已经无法满足寻址需求时,才需要关闭该参数。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表