论坛首页 入门技术论坛

对象、规范

浏览 2958 次
锁定老帖子 主题:对象、规范
该帖已经被评为新手帖
作者 正文
   发表时间:2007-01-11  
OO
第一章 对象导论

  其实这章介绍的是oop的思想,知道什么是抽象、接口、继承等等,参见abstract and interface和extends。

第二章 万事万物皆对象

  在java程序中,万事万物皆对象,即使是java程序本身,也是一个对象

  一、Reference是操纵对象之钥匙

  c语言中是使用指针来操纵对象的,但是java呢?用的是reference来操纵对象,我习惯把他叫做句柄,句柄和对象的关系就想是电视遥控器和电视机的关系一样,既然是这样,那么遥控器和电视机都是可以独立出现的

  例如:String name;

  这个java语句只会产生句饼(遥控器),并不产生实际的对象(电视机),就想你老婆还没生孩子之前你们就把名字给取好了一样,句柄并没有连接到实际的对象上。这个样子写代码是不推荐的,一个没有指向对象的句柄在调用的时候编译器会抱错,应当使用String name="baby";,或者使用String name =new String("baby");这里new的意思是产生一个string类型的对象,并且这个string叫做baby。这2个方法都可以实现对象的建立。

  二、所有的对象都需要你来建立

  1、储存在那里

  a、寄存器  这里是核心的存储空间,我们是没办法操纵的

  b、栈 (stack )这里的存取速度快,效率高,因为这里要求被存储的数据有具体大小和存活时间限制,使用弹性小,这里一般存储的是我们的对象句柄,而对象是不存在这里的

  c、堆 (heap) 这里是通用的存储空间,他比stack好在编译器不需要知道实际在heap中存储数据的大小,也不知道这个空间需要分配多长时间,弹性好,所以用来存储对象,但是速度要比stack慢很多

  d、静态存储空间(static storage)这里是存放被声明为static的特定成员,java对象本身是不会分配在这里的

  e、常量储存空间 这里存放的是程序中的常量,常量值不会改变,最安全

  f、non-ram  流或者是持久话对象

  2、基本数据类型

  boolean char byte short int long float double void  基本数据类型的数据是不用new 来创建的,直接int i=0,不使用heap空间,他是被放在stack中的,速度快!但是假如你要是想用heap来存储基本数据类型的话,就要使用该类型的外覆类来实现了 例如Integer  i= new Integer("0");

  注意!String不是基本数据类型,她是对象!从他的定义方法就可以知道了!

  3、数组(array)

  java中的数组使用和定义上要比c中的数组更安全,当你在定义数组的时候其实产生的是一个储存对象句柄的数组,而每一个句柄所指向的值回被设定为null,也就是不指向任何对象

       4、高精度计算(BigDecimal)

提供任意精度的浮点数计算,可以用它来进行要求精度极高的货币兑换的计算。

    三、代码规范

     1、组成类名的每个单词的首字母需要大写,如:public class PlayGame{  }

     2、组成方法的单词除首字母不大写外,其他的单词需大写,如:int allOfColors(){   }

          void changeColors(){   }

   发表时间:2007-01-11  
如果是抄书,就没必要在这里发了。

在java程序中,万事万物皆对象,即使是java程序本身,也是一个对象。

前段时间我发的一个帖子就是抱怨这句话的……
0 请登录后投票
   发表时间:2007-01-13  
呵呵,总结其他人的东西,做个笔记,这个没问题吧
?有些是书上的,有些是自己说的,因为我还没到达一个可以完全用自己的话来诠释书中的全部内容,如果真能全部用自己的话,呵呵,我也可以出书了。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics