和其他高级语言类似,Java也具有以下部分

1、关键字:见下表,注意Java严格区分大小写,关键字都是小写

2、标识符:见下图

3、注释。有两种://(单行注释)和/**/(多行注释)。还有一种文档注释/** ...... */ ,注释若干行,并可以将注释提取出来写入 javadoc 文档 ,这一部分以后再详写。

4、常量和变量:都是Java中数据的保存形式,保存在内存中方便计算,名字是标识符,标识其在内存中的位置(这是Java自动完成的)。Java是强类型语言,即数据必须用类型进行标示,这样一来变量即使改变其值,也只能是同类型的值。

  1. public class var {
  2. public static void main(String[] args)
  3. {
  4. /*
  5. * 定义变量:数据类型 变量=初始值
  6. * 定义过的变量可以直接使用
  7. * 使用过的变量标识符不能重复定义,即使类型不同也不可以
  8. */
  9. byte b=-128;
  10. b=127;
  11. short s=-32768;
  12. s=32767;
  13. int i=-2147483648;
  14. i=2147483647;
  15. /*
  16. * 注意Java中规定long型数的末尾必须加上l(小写L);
  17. * float型数末尾必须加上f,否则即使在取值范围内也报错
  18. */
  19. long l=1234567890123l;
  20. float f=2.3f;
  21. double d=1.23456;
  22. char c='你';
  23. boolean bo=true;
  24. System.out.print(b);
  25. {
  26. int z=9;
  27. System.out.print(z);
  28. }
  29. /*
  30. * Java中变量的范围在{}内,外部不能找到该变量。
  31. * 注意即使如此也不能使用同样的标识符进行定义
  32. */
  33. }
  34. }
  35.  
  36. public class test1 {
  37. public static void main(String[] args)
  38. {
  39. /*
  40. * 上面说到Java中的变量定义需要指明类型,
  41. * 却又说了整数类型默认为int型,浮点类型默认为float,
  42. * 这是因为除了那些指明(即用标识符标志)的数据,还有一类是直接使用的,
  43. * 就像下面的1(对,就是赋值使用的1),是数据,但是没有经过定义,效果类似常量而非变量
  44. * 所谓的默认类型就是指这些值的类型
  45. * 所以下面的赋值过程就涉及类型的问题,其实Java会自动进行强制类型转换,见后面解释
  46. */
  47. byte a=1;
  48. /*
  49. * 类型的问题会发生在以下三个问题上:
  50. * 1、两个不同类型的值进行操作(首先会调整到同一类型中,低内存->高内存,即 类型提升 ,所以 值 的类型是高内存的类型)
  51. * 2、两个同类型值进行操作,但结果类型有变
  52. * 一般来说,如果值的类型较高,则应使用相应的类型来保存,但是如果有需求使用低内存则可以进行 强制类型转换。
  53. * 类型提升自动完成,没有害处;但是强制类型转换会将超过该类型内存的高位全部舍弃,有损精度
  54. */
  55. int b=5;
  56. byte c=-3;
  57. c=(byte)(b+c);
  58. System.out.println(c);
  59. byte d=127;
  60. byte e=1;
  61. d=(byte)(d+e);
  62. System.out.println(d);
  63. /*
  64. *类型问题还有一个特殊问题,就是
  65. *!!! 3、有变量参与的赋值,Java会将接收值的类型设为默认类型(即int和double类型)
  66. *这里就涉及类型的转换,而且这是自动进行的,使用时要小心。
  67. */
  68. byte f=3;
  69. byte g=4;
  70. f=(byte)f+g;
  71. System.out.println(f);
  72. /*
  73. * 上面说的类型问题是在数值型变量上,但是字符型变量也可以和数值型变量进行运算,默认结果为int型。
  74. */
  75. System.out.println((char)('你'+1));
  76. }
  77. }

Java变量测试

Java学习笔记二.1的更多相关文章

  1. Java学习笔记二十九:一个Java面向对象的小练习

    一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...

  2. 数组排序、递归——(Java学习笔记二)

    升序:      选择排序:         选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置         先出现最小值,最后出现最大值. public stat ...

  3. Java学习笔记二:数据类型II

    GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一  Java中的数据类型 Java ...

  4. Java学习笔记二十八:Java中的接口

    Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...

  5. Java学习笔记二十七:Java中的抽象类

    Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...

  6. Java学习笔记二十五:Java面向对象的三大特性之多态

    Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...

  7. Java学习笔记二十四:Java中的Object类

    Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...

  8. Java学习笔记二十二:Java的方法重写

    Java的方法重写 一:什么是方法的重写: 如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法. 语法规则 返回值类型.方法名.参数类型及个数都要与父类继承的 ...

  9. Java学习笔记二十一:Java面向对象的三大特性之继承

    Java面向对象的三大特性之继承 一:继承的概念: 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类. 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方 ...

  10. Java学习笔记二十:Java中的内部类

    Java中的内部类 一:什么是内部类: (1).什么是内部类呢? 内部类( Inner Class )就是定义在另外一个类里面的类.与之对应,包含内部类的类被称为外部类. (2).那为什么要将一个类定 ...

随机推荐

  1. Hive Cilent数据操作

    Hive运行命令方式有cli,jdbc.hwi.beeline.而我们经常使用的往往是cli shell 操作. cli shell hive -help hive --help 注:命令脚本必须在集 ...

  2. Android LruCache 压缩图片 有效避免程序OOM

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9316683 本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工, ...

  3. FPGA设计中的电源管理(转载)

    过去,FPGA设计者主要关心时序和面积使用率问题.但随着FPGA不断取代ASSP和ASIC器件,设计者们现正期望能够开发低功耗设计,在设计流程早期就能对功耗进行正确估算,以及管理和对与FPGA相关的各 ...

  4. 数字信号处理C语言集(1.1 随机数的产生)

     main.cpp 所建工程文件如下图所示 uniform.h #ifndef _UNIFORM_H_ #define _UNIFORM_H_ double uniform(double a,doub ...

  5. Weka中数据挖掘与机器学习系列之基本概念(三)

    数据挖掘和机器学习 数据挖掘和机器学习这两项技术的关系非常密切.机器学习方法构成数据挖掘的核心,绝大多数数据挖掘技术都来自机器学习领域,数据挖掘又向机器学习提出新的要求和任务. 数据挖掘就是在数据中寻 ...

  6. Eclipse如何新建一个tomcat_server发布web项目

    方法/步骤     通过Eclipse打开一个正在开发阶段的java的web项目,没有项目的,只是为了学习的话,可以新建一个测试的java的web项目即可.在功能窗口找到如图所示的Servers窗口, ...

  7. linux下支持托盘的邮件客户端Sylpheed

    在网上搜索了很多客户端想支持系统托盘,发现一个很不错的邮件客户端Sylpheed.设置方式和foxmail很像,最为重要的是支持系统托盘,很方便,默认没有开启,简单设置下:配置->通用首选项-& ...

  8. Huawei交换机VRP配置介绍

    一.命令视图• 用户视图<Huawei>• 系统视图 [Huawei]• 接口视图 [Huawei-GigabitEthernet0/0/1]• 协议视图 [Huawei-rip-1]• ...

  9. 通过域 组策略禁用U盘(只允许部份许可U盘可在客户端读取)

    U盘禁用设置步骤: 1.客户端 注册表修改,USBStor  的start改为4 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsbSto ...

  10. JS之预编译和执行顺序(全局和函数)

    预编译的两种情况 全局: 1.全局 直接是script标签中的代码,不包括函数执行 执行前: 1.首先生成一个GO(global object)对象,看不到,但是可以模拟出来用来分析 2.分析变量声明 ...