一、标识符和关键字
        1、具有特殊作用的分隔符:分号;、花括号{}、圆括号()、空格、圆点 . 
        2、标识符规则:用于给程序中变量、类、方法命名的符号。
      Java的标识符必须以字母、下划线_、美元符$开头,后面可跟任意数目的字母、数字、下划线、和美元符。
       此处的字母不限于26个英文字母,而且可以包括Unicode字符集内的多种语言的字符
 注意: (1)标识符不能以数字开头;
        (2)区分大小写;
        (3)不能是Java关键字和保留字,错误实例:int boolean; 但可以包含关键字和保留字:int aboolean。
        (4)对于特殊字符,只能包含美元符,不能包含@、#等其他特殊字符
        3、变量名,类名,包名命名建议首先要见名知意:
变量名
类/接口名
包名
常量
方法名
一个单词
小写
首字母大写
小写
大写
小写
举例
num
Hello
utils
NUM
test
两个或多个
单词
小写,而且可以用下划线分隔
首字母大写
小写
小写,而且可以用下划线分隔
首个单词小写,第二个单词开始首字母大写
举例
num_before
HelloWorld
MAX_VALUE
getConnection


二、附图Java关键字:
 abstract
continue
for
new
switch
assert
default
if
package
synchronized
boolean
do
goto
private
this
break
double
implements
protected
throw
byte
else
import
public
throws
case
enum
instanceof
return
transient
catch
extends
int
short
try
char
final
interface
static
void
class
finally
long
strictfp
 volatile
const
float
native
super
while
    其中,enum是Java5开始新增的关键字,用于定义一个枚举。
         goto,const也被称为保留字(reserved word),意思是Java目前还未使用这两个关键字,但可能在未来的Java版本中使用这两个关键字。
    Java还提供了三个特殊的直接量(literal): true、false、null。Java的标识符也不能使用这三个特殊的直接量。 

 

三、Java数据类型分类

            Java支持的类型分为两类:基本类型(Primitive Type)和引用类型(Reference Type)。
            
          (1)基本类型包括boolean类型和数值类型
         
 boolean类型只有两个值,真和假,即true和false,理论上占用1bit的空间,实际上占用一字节(8bit)
   boolean类型的值或者变量,通常被用作flag来进行流程控制,比如用在 if条件控制语句以及 while、do-while、for等循环控制语句中,还可在三目运算符中使用
        (2)数值类型包括整数类型和浮点类型
整数类型:
             1、byte类型:1字节8位,范围:-128(-2^7)~127(2^7-1);
                2、short类型:2字节16位,范围:-32768(-2^15)~32767(2^15-1);
              3、char类型:2字节(代表字符型,相当于一个16位的无符号整数);
char类型的值必须由单引号括起来,它有三种表示形式
                (1)直接通过单个字符来指定,例如'A'、'9'和'0'等
                (2)通过转义字符表示特殊字符型值,例如'\n'、'\t'等
                (3)直接使用Unicode(Java使用的字符集)值来表示字符型值;格式是'\uXXXX',其中XXXX表示一个十六进制数,一共可以表示65536个字符
   其中前256个('\u0000'~'\u00FF')字符和ASCII码(美国信息交换标准代码)中的字符完全重合

(4)在C中char是ASCII的字符集,最大为255,即一个字节;而java的char是Unicode的字符集,最大为65535,即两个字节,其容纳了各国的字符。

所以C中不可以使用汉字作为变量名,而java则可以

(5)char类型的变量、值完全可以参加四则运算等数学运算,也可以比较大小——实际上都是用该字符对应的编码参与运算 
                4、int类型:4字节32位,范围:-2147483648(-2^31)~2147483647(2^31-1); 
          5、long类型:8字节64位,范围:(-2^63)-(2^63-1)
浮点类型:        
         1、float类型:单精度浮点数,4字节32位,第一位是符号位,接下来8位表示指数,再接下来的23位表示尾数;
   Java的浮点类型默认是double类型,如果希望Java把一个浮点类型值当成float类型处理,应该在这个浮点类型值后紧跟f或F;
       2、double类型:双精度浮点数,8字节64位,第一位是符号位,接下来11位表示指数,再接下来的52位表示尾数
Java的浮点数有两种表示形式:
   -->十进制数形式:如5.12、512.0、.512,浮点数必须包含一个小数点,否则会被当成int类型处理;
         -->科学计数法形式:如5.12e2(即5.12*10^2),5.12E2(也是5.12*10^2)
    注意:只有浮点类型的数值才可以使用科学计数法形式表示。如51200是int类型的值,但512E2则是浮点类型的值。
此外,Java还提供了三个特殊的浮点数值:正无穷大,负无穷大,非数,用于表示溢出和出错。
  如,使用一个正数(浮点数)除以0将得到正无穷大:float x = 521.0f/0; //输出Infinity
          使用一个负数(浮点数)除以0将得到负无穷大:float y = -521.0f/0; //输出-Infinity
               0.0除以0.0或对一个负数开方得到非数:float a = 0.0f/0.0f;//输出NaN
这三个特殊值是Float和Double类中定义的public static final值,可通过Double和Float类直接调用
      Double.POSITIVE_INFINITY/Float.POSITIVE_INFINITY = Infinity
      Double.NEGATIVE_INFINITY/Float.NEGATIVE_INFINITY = -Infinity
   Double.NaN/Float.NaN= NaN
  注意:所有的正无穷大,负无穷大值都是相等的,而NaN不与任何数值相等,甚至和自身都不相等 

(3) 引用类型包括类、接口、和数组类型,还有一种特殊的null类型

       所谓引用数据类型就是对一个对象的引用,对象包括实例和数组两种。
               实际上,引用类型变量就是一个指针,指向所引用的对象在内存中存放的首地址,只是Java没有指针这个说法。

     空类型(null)就是null值的类型,这种类型没有名称。空引用(null)是null类型变量唯一的值。
    null只能被转换为引用类型,不能转换成基本类型,所有不要把一个null值赋给基本数据类型的变量
这是我的学习笔记,请大家多多指正。

JavaSE(二)标识符,关键字,数据类型的更多相关文章

  1. core java 1~4(HelloWorld & 标识符|关键字|数据类型 & 表达式|流程控制 & 数组)

    MODULE 1 Java的编译和运行----------------------------编译:javac -d bin src\HelloWorld.java -d:指定编译后的class 文件 ...

  2. Java从零开始学二(标识符和关键字)

    标识符.关键字.注释 一.标识符 Java中的包.类.方法.参数和变量的名字由任意顺序的大小字母.数字.下划线(_).和美元符号($)组成, 标识符:不能以数字开头.也不能是JAVA中的保留关键字 如 ...

  3. Python 1基础语法二(标识符、关键字、变量和字符串)

    一.标识符 标识符就是程序员自己命名的变量名.名字需要有见名知义的效果,不要随意起名 :比如 a=1 a是个变量,a这个变量名属于标识符 1 company = '小米 2 employeeNum = ...

  4. java中注释、关键字、标识符,数据类型(上)

    一.java中的注释(有3种) 注释:是给写代码的人看的,注释不会被执行 单行注释:用符号"//"实现 多行注释:用"/* */ " 实现 javaDoc(文档 ...

  5. java基础1_标识符,数据类型

    JDK的卸载与安装 : 1  卸载 a 从程序中卸载   控制面板 - 程序和功能 - 卸载JDK; b 删除  C:\Windows\System32 下面的  java   javac  java ...

  6. JAVA_SE基础——6.标识符&关键字

    学会写helloworld之后,  我们就开始来认识标识符&关键字 一.标识符 标识符是指可被用来为类.变量或方法等命名的字符序列,换言之,标识符就是用户自定义的名称来标识类.变量或方法等.更 ...

  7. Go语言从入门到放弃(二) 优势/关键字

    本来这里是写数据类型的,但是规划了一下还是要一步步来,那么本篇就先介绍一下Go语言的 优势/关键字 吧 本章转载  <The Way to Go>一书 Go语言起源和发展 Go 语 言 起 ...

  8. javase基础笔记2——数据类型和面向对象

    API:Application program interface  程序调用一个方法去实现一个功能 正则表达式:regex 用来匹配的 javaEE里边有三大框架 SSH struts spring ...

  9. 二、C# 数据类型

    C#语言的基本类型包括8种整数类型.2种用于科学计算的二进制浮点类型.1种用于金融计算的十 进制浮点类型.1种布尔类型以及1种字符类型. 2.1 基本数值类型 C#中的基本数据类型都有关键字和它们关联 ...

  10. C#基础(二)--之数据类型

    在第一章我们了解了C#的输入.输出语句后,我这一节主要是介绍C#的基础知识,本节的内容也是后续章节的基础,好的开端等于成功的一半.在你阅读完本章后,你就有足够的C#知识编写简单的程序了.但还不能使用继 ...

随机推荐

  1. asp.net core 2.2 生产环境直接更新View页面并立即生效

    有的时候我们会直接在生产环境上更新页面文件,比如更改了JS代码,CSS代码或页面的文案,布局等.这种没有改到后台代码的情况一般就是直接发布页面文件了,在asp.net core 2.2以前的版本(没有 ...

  2. 通过CDN引入jQuery的几种方式

    百度 CDN <head> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" ...

  3. 我以为我对Mysql索引很了解,直到我遇到了阿里的面试官

    GitHub 4.8k Star 的Java工程师成神之路 ,不来了解一下吗? GitHub 4.8k Star 的Java工程师成神之路 ,真的不来了解一下吗? GitHub 4.8k Star 的 ...

  4. 并发编程-concurrent指南-交换机Exchanger

    java.util.concurrent包中的Exchanger类可用于两个线程之间交换信息.可简单地将Exchanger对象理解为一个包含两个格子的容器,通过exchanger方法可以向两个格子中填 ...

  5. 嵊州D4T1 翻车 rollover 真的翻车了

    翻车 [问题描述] 有一天,小武找到了翻车王,给了他n个整数a1,a2,a3,…an,翻车王需要选择其中的k个数,使得选出的k个数中任意两个的差都可以被m整除. 选出的数可以重复,但不可以超过这n个数 ...

  6. 【POJ - 3050】Hopscotch (dfs+回溯)

    -->Hopscotch 这接写中文了 Descriptions: 奶牛们以一种独特的方式玩孩子们的跳房子游戏. 奶牛们创造了一个5x5的格子 他们熟练地跳上其中的一个格子,可以前后左右地跳(不 ...

  7. 如何编写无须人工干预的shell脚本

    在使用基本的一些shell命令时,机器需要与人进行互动来确定命令的执行.比如 cp test.txt boo/test.txt,会询问是否覆盖?ssh远程登陆时,需要输入人工密码后,才可以继续执行ss ...

  8. fastdfs java client error

    tracker,storage运行正常,利用fdfs_test程序做测试,可以正常上传下载文件. tracker的端口配置 # HTTP port on this tracker server htt ...

  9. 【NOIP2018】标题统计-C++

    描述 凯凯刚写了一篇美妙的作文,请问这篇作文的标题中有多少个字符? 注意:标题中可能包含大.小写英文字母.数字字符.空格和换行符.统计标题字符数时,空格和换行符不计算在内. 输入 输入文件名为 tit ...

  10. LoadRunner Community Edition 12.60 无法获取Community License

    更新:该问题于2018/9/28已修复.附邮件: Hi Morris, Thank you for your update. I would like to tell you that we had ...