java field type_Java中class type field 的关系怎么梳理清楚?

class 是类,它对应了一组数据结构,以及对应的操作数据的方法。

类是一套定义,我们通过 new 类名() 这样的语法生成类的对象。

同一个类的所有对象中所能够存储的数据格式都是一样的。

如果一个对象中能够存储一个整数值,那么另一个对象中也可以。

为了表述一个类的数据结构,我们在类中声明了属性( field )。

不同的属性需要表达的量不同,有可能是整数,有理数,无理数,字符

但是在计算机中,所有的数据都会变成各种形式的二进制数字进行存储

在数学计算中,我们不需要区分整数或者无理数

因为他们具有相同的运算规则

但是在计算机中

使用固定的内存空间存储数据

能够大大降低硬件的复杂性

提升运算的性能

所以计算机中倾向于固定数据所占用空间

但是存储空间和存储方法固定了,数据的取值范围就固定了

为了应对不同的取值范围

我们又对不同场景的数据做了细分

数据类型(type)就是对数据的取值范围和存储方法的声明

int 就按照整数的方式存储,最大存储 Integer.MAX_VALUE

double 就按照浮点数的方式存储,能够表示的数值和精度也是有限的

在此之上,为了更加适应人类的思维

人们为 类型 赋予了额外的意义

类型除了代表数据的存储方法和取值范围

还应该附带能够对数据施加的操作

本质上相同的数据

不同的类型可以表达不同的意义

整形的 1001000 表示数字 72

字符型的 1001000 表示字母 H

到这里,类型和类开始走到一起

大概这也就是为何中文如此翻译 class 和 type 两个字眼

回到类

我们 new 生成的每一个对象都会在内存中有自己的一块存储空间

在对象生成时,按照类的设计

规划好了哪一段内存对应哪一个属性的数据

在另一块特殊的内存中存储了类中所有方法的代码

他们为同一个类的所有对象所共享

当我们调用对象的某个方法时

java 虚拟机会查找这个方法的定义并施加到对应的那块存储空间

另一个对象调用同个方法时

java 虚拟机又会将同一段代码施加到新的存储空间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值