变量有两种:primitive主数据类型和引用。

Java注重类型。它不会让你做出把长颈鹿类型变量装进兔子类型变量中这种诡异又危险的举动——如果有人对长颈鹿调用“跳跃”这个方法会发生什么悲剧?并且它也不会让你将浮点数类型变量放进整数类型的变量中,除非你先跟编译器确认过数字可以损失掉精确度。

编译器会指出大部分的问题:

Rabbit happoer = new Giraffe();

谢天谢地,这样的程序过不了编译器这关

为了让类型安全能够发挥作用,你必须声明所有变量的类型,指定它是个int类型或是个Dog类型,变量有两种口味:清凉的primitive主数据类型和香辣的对象引用。primitive主数据类型用来保存基本类型的值,包括整数,布尔和浮点数等,而对象引用保存的是对象的引用。

你可以把Java的变量想成是杯子。咖啡杯、茶杯、装满啤酒的泡沫跟鱼缸一样大的巨无霸杯等等。

变量就像是被子,是一种容器,承装某些事务。

primitive主数据类型如同咖啡馆的被子,他们有不同的大小,而每种大小都有一个名称,像是“小杯”,“大杯”,“重量杯”等。

而在java中,primitive主数据类型也有不用的大小与名称。当你在Java中声明变量的时候,必须指定它的类型,类似:long-64、int-32、short-16、byte-8

要确保变量能存下所保存的值,不然会溢出。

我们可以根据以下规则来帮助类、方法或变量命名(真正的规则在实际上更为复杂,但这些规则就能够保证安全):

——名称必须以字母、下划线(_)或$符号开头,不能用数字开头

——除了第一个字符以外,后面就可以用数字。反正不要用在第一个字符就行。

——只要符合上述两条规则,你就可以随意地命名,但还要要避开Java的保留字。

事实上没有对象变量这样的东西存在

只有引用(reference)到对象的变量

对象引用变量保存的是存取对象的方法

它并不是对象的容器,而不是类似指向对象的指针。或者可以说是地址。但在Java中我们不会也不该知道引用变量中实际装载的是什么,它只是用来代表单一的对象。只有Java虚拟机才会知道如何引用来取得该对象。

Java注重类型,一旦数组被声明出来,你就只能装入所声明类型的元素。

变量有两种Lprimitive主数据类型和引用

变量的声明必须有类型和名称

primitive主数据类型变量值是该值的字节所表示的

引用变量的值代表位于堆之对象的存取方法

引用变量如同遥控器,对引用变量使用圆点运算符可以如同按下遥控器按钮般地存取它的方法或实例变量

转载于:https://www.cnblogs.com/UncleCatMySelf/p/9250947.html

JSJ——主数据类型和引用相关推荐

  1. 认识变量---primitive主数据类型和引用

    认识变量-primitive主数据类型和引用 变量有两种:primitive主数据类型(用来保存基本类型的值:整数.布尔.字符和浮点型)和引用 1.声明变量 eg:int count; 规则: 1)变 ...

  2. java primitive 放在哪_primitive主数据类型的包装类

    JAVA在5.0版本之后之后给每一个primitive主数据类型(除了char)都准备了一个包装类, int→Integer:long→Long:byte→Byte:short→Short:float ...

  3. 拷贝构造函数的第一个参数必须是自身类类型的引用

    拷贝构造函数的第一个参数必须是自身类类型的引用 拷贝构造函数的定义:如果一个构造函数的第一个参数是自身类类型的引用,且任何额外参数都有默认值,则此构造函数是拷贝构造函数 第一个参数必须是自身类类型的引 ...

  4. Java之主数据类型的包装

    所谓的主数据类型的包装,就是需要以对象的方式来处理primitive主数据类型时,就把它包装起来,这个的前提是Java 5.0以上的版本.每一个primitive主数据类型都有个包装用的类,且因为这些 ...

  5. Python基础day05【函数(函数传参的两种形式、函数形参)、拆包、引用、可变与不可变类型、引用做函数参数注意点】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员]    目录 0.复习 1.函数传参的两种形式[掌握] 2.函数形参 2.1.缺省参数(默认参数) ...

  6. C++const类型的引用参数

    C++const类型的引用参数: 具体作用,假设实参的参数类型与引用参数不匹配,但可以转换为引用类型,程序将创建一个正常类型的临时变量,使用转化后的实参值来初始化它,然后传递一个指向该临时变量的引用. ...

  7. 关于值类型和引用 类型

    -----------------------------------------关于值 类型 和 引用 类型--------------------------------------------- ...

  8. 父类类型的引用指向子类的对象

    父类类型的引用指向子类的对象,注意以下几点: 一.该引用只能调用父类中定义的方法和变量: 二.如果子类中重写了父类中的一个非静态方法,那么在调用这个方法的时候,将会调用子类中的这个方法:(动态连接.动 ...

  9. c++ 指针类型的引用

    通常理解为引用就是类型前面加个&符号例如 int  i=2; int &a=i; 如果时指针类型的引用让人看起来就很困惑了, int a = 3;//定义变量a;  int* p = ...

  10. Java中的对象类型像引用还是指针,谁是谁非?

    Java中的对象类型像引用还是指针,谁是谁非? 作者:海枫 地址:http://blog.csdn.net/linyt 作为一名程序员,我们应该对新知识和新技术刨根问底,而不应泛泛而谈.我未曾接触到J ...

最新文章

  1. 续写故事demo php,小学生续写故事
  2. Objective-C 入门(七)协议 protocol(JAVA中的接口)
  3. 火车票上的星号暗藏玄机?!
  4. Android判断当前的android设备是否处于联网状态
  5. 『原创』再谈用 php 实现域名 whois 信息查询
  6. 计算机用户账户添加,windows添加用户账户
  7. 华为鸿蒙系统支持智慧多屏吗,搭载鸿蒙OS!华为宣布企业智慧屏:多屏协同、底座带轮子...
  8. 计算机网络 之 TCP和UDP的端口号解析
  9. MATLAB 图像函数(第七章) 图像的代数运算
  10. Syslinux引导文件名与菜单解释
  11. win8: hello gril
  12. 想问一下C++里queue要怎么遍历
  13. Linux 基础知识(九)
  14. 2017蓝桥杯省赛---java---B---3(承压计算)
  15. Web前端笔记-画布拖动及放缩(two.js)
  16. GridFsTemplate介绍以及基本使用
  17. mysql数据库 uft8_unicode_ci是utf8吗_MysQL数据库中utf8_unicode_ci与utf8_general_ci的区别
  18. jQuery 常用效果
  19. 一个程序猿的生命周期
  20. 微软Azure云服务故障超过24小时,原因竟是——被雷劈了

热门文章

  1. 【渝粤教育】电大中专工程图学基础_1作业 题库
  2. [渝粤教育] 中国地质大学 管理信息系统 复习题 (2)
  3. 梯度下降-从0开始一行代码一解释
  4. 迪士尼收购福克斯,传媒巨头江山瓦解?
  5. Linux下 jenkins 的 使用
  6. 软件测试——第三次作业
  7. centOS 6.5上安装mysql5.7压缩版
  8. Unit Tests Tool - What is “Mock You” The introduction to moq #Reprinted#
  9. Django SimpleCMDB API
  10. linux 使用yum给已安装的软件降级