博客
关于我
java--类与对象的理解及浅显过程内存结构
阅读量:301 次
发布时间:2019-03-03

本文共 978 字,大约阅读时间需要 3 分钟。

一、什么是类和对象

: 对一类事物的统称,例如:人类  (此称呼就是对  人   这 一类事物 的描述) 抽象的  概念上的统一定义

对象:具体存在的个体 、实际 存在  在客观世界中 也叫作:实例    张三、李四都是具体的个体(一个人)

对象 是 根据  类(抽象的东西) 具体出来的(也就是 实例化出来的)

例如:类  相当于  楼的设计图纸   (任何楼都有一样的结构:地基  混凝土 钢筋)

          注:定义类:就是定义 类 中的  成员变量(Field)  和   成员方法(method)

                 相当于:定义楼  都需要 混凝土、钢筋等 和 地基、每层楼面怎么盖

          对象  相当于  根据 设计图纸具体盖出来的  大楼:写字楼、居民楼、等等

  就是 把一个种类的一堆实体对象  的 相同功能和通用的材质  抽离出来  (抽象出来)

二、在java中创建类的对象

使用 类 : 就必须 将 类 实例化 (即:创建类的 对象(对象:又叫做实例))

方法1.调用 类的构造器 来 创建类的对象   (new  一个东西)

创建出来的对象也具有  类有的结构和方法(方法就是设计的功能) 

Person  p1 =new   Person();

p1 就叫做 实例出来的对象   

p1.name=“张三”;

p1.eat();

可以通过 p1 来   修改 类中的 成员变量的值  和  调用 类中的成员方法   

创建类的对象过程  :   内存结构:

在内存中分区 :目前用到 栈  和堆

栈:存放 对象的引用;局部变量

堆:存放new出来的东西;成员变量

首先 第一行代码: Person  p1 =new Person();

Person  p1:栈空间开辟出一个空间 存放引用变量p1 

new Person():堆空间开辟出一块区域 ,会有一个首地址  然后将   首地址的地址值    传给  栈 中的 p1(这个引用变量)

new Person() 这样的操作,new出来以后  new Person()就是一个实体了   

类的成员变量存在于  创建出的 new Person() 这个实体中

初始的成员变量 为初始值

其次  第二行代码:  p1.age=45;

对于 实体中的  成员变量  进行初始化  修改为 45

 

每一次 new  一个类的 实例  就在堆空间 中重新进行开辟区域    

new出来的新的对象 之间 没有任何关系

每一个根据类创建出的 对象中的 成员变量互不影响 

你可能感兴趣的文章
Mysql 索引问题集锦
查看>>
Mysql 纵表转换为横表
查看>>
mysql 编译安装 window篇
查看>>
mysql 网络目录_联机目录数据库
查看>>
MySQL 聚簇索引&&二级索引&&辅助索引
查看>>
Mysql 脏页 脏读 脏数据
查看>>
mysql 自增id和UUID做主键性能分析,及最优方案
查看>>
Mysql 自定义函数
查看>>
mysql 行转列 列转行
查看>>
Mysql 表分区
查看>>
mysql 表的操作
查看>>
mysql 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>