1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java中指针

java中的指针学习心得 在 HYPERLINK /tag/Java \o java \t _blank java中,object就是一个指针,它指向了一片 HYPERLINK /tag/%E5%86%85%E5%AD%98 \o 内存 \t _blank 内存地址,里面 HYPERLINK /tag/%E5%AD%98%E5%82%A8 \o 存储 \t _blank 存储了object中的变量。 所以 HYPERLINK /tag/%E6%88%91%E4%BB%AC \o 我们 \t _blank 我们也 HYPERLINK /tag/%E5%8F%AF%E4%BB%A5 \o 可以 \t _blank 可以使用这一 HYPERLINK /tag/%E6%8A%80%E5%B7%A7 \o 技巧 \t _blank 技巧来处理指针。 下举一C中的指针例子,我们接下来把它改写成java, 首先是c版本 ?1?void?main()?{??? ?2?????int*????x;??//? HYPERLINK /tag/%E5%BB%BA%E7%AB%8B \o 建立 \t _blank 建立指针x,y ?3?????int*????y;??//?(但是还没有指向 HYPERLINK /tag/%E4%BB%BB%E4%BD%95 \o 任何 \t _blank 任何目的地) ?4????? ?5?????x?=?malloc(sizeof(int));????//?分配一块可以存储int的内存区域 ?6?????????????????????????????????//?让x存储这块内存的地址 ?7????? ?8?????*x?=?42;????//?将42存储到这个目的地 ?9????? 10?????*y?=?13;????//?错误,y没有指向任何区域,所以这里会报错 11????? 12?????y?=?x;??????//?让y指向x所指向的目的地 13????? 14?????*y?=?13;????//?将13存储到y所指向的目的地,其实和x所指向的目的地是一个 HYPERLINK /tag/%E5%9C%B0%E6%96%B9 \o 地方 \t _blank 地方 15?} 16? java版本 ?1?class?IntObj?{ ?2?????public?int?value; ?3?} ?4? ?5?public?class?Binky()?{ ?6?????public?static?void?main(String[]?args)?{ ?7?????????IntObj??x;??//建立指针x,y ?8?????????IntObj??y;??//?(都还没有指向任何目的地) ?9????????? 10?????????x?=?new?IntObj();???//?分配一块内存区域 11?????????????????????????????//?让x指向这块内存区域,就是x存储这块内存的地址 12????????? 13?????????x.value?=?42;???//?将42存储进内存区域 14????????? 15?????????y.value?=?13;???//错误,y没有指向任何内存区域,用java的话说就是没有初始化 16????????? 17?????????y?=?x;??//?让y指向x所指向的内存区域,那么即使y不初始化,也可以开始使用 18????????? 19?????????y.value?=?13;???//?将13存储到y所指向的内存区域,就是x所指向的内存区域 20?????} 21?}??? 22? ?这样一来,java里面也就实现了c的指针操作。从这个例子我们可以看出,java的类、实例其实就是指针, 下面的例子更清楚的表达了这一点。 ?再看一个例子,就是一个linklist的例子,它的结构如图 ? ? ?还是先看C代码,再看Java代码,我折叠了一下,免得太长碍眼。 ?1?struct?Node?{ ?2?????int?value; ?3?????struct?Node*?next; ?4?}; ?5? ?6? ?7?{ ?8?????//?建立指针 ?9?????struct?Node*?x; 10?????struct?Node*?y; 11?????struct?Node*?z; 12? 13?????//?分配内存 14?????x?=?malloc(sizeof(Node)); 15?????y?=?malloc(sizeof(Node)); 16?????z?=?malloc(sizeof(Node)); 17? 18

文档评论(0)

sy78219 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档