一、标识符和关键字
        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. 一道关于String的面试题,新鲜出炉,刚被坑过,趁热!!

    很多人都会答错的一道关于String的题目,究竟有什么难度? 我们一起来看一道关于String的面试题,准确说是改编的面试题! 准备好啦?在放大招之前先来一个小招式 String s1 = new S ...

  2. 导入lxml找不到etree,报ImportError:DLL load failed:找不到指定的程序

    1.是pip install lxml后,安装好了lmx-3.8.0,然后执行sacpy的scrapy crawl jobbole命令报导入lxml的etree无法导入,找不到指定的程序 2.这是因为 ...

  3. spring源码深度解析— IOC 之 开启 bean 的加载

    概述 前面我们已经分析了spring对于xml配置文件的解析,将分析的信息组装成 BeanDefinition,并将其保存注册到相应的 BeanDefinitionRegistry 中.至此,Spri ...

  4. golang开发:类库篇(二) Redis连接池的使用

    为什么要使用连接池 一个数据库服务器只拥有有限的连接资源,一旦所有的连接资源都在使用,那么其它需要连接的资源就只能等待释放连接资源.所以,在连接资源有限的情况下,提高单位时间的连接的使用效率,缩短连接 ...

  5. 设计模式-观察者模式(Observer)

    观察者模式是行为模式的一种,它的作用是当一个对象的状态发生变化时,能够自动通知关联对象,自动刷新对象状态. 观察者模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持状态同步. ...

  6. Codeforces 152C:Pocket Book(思维)

    http://codeforces.com/problemset/problem/152/C 题意:给出n条长度为m的字符串,对于第一条字符串的每个位置利用第2~n条字符串的相应位置的字符去替换相应的 ...

  7. find文件删除

    find /root/title/test -type f -name '*.txt' -exec rm {} \;   查找并删除test文件夹下所有txt文件 find /root/title/t ...

  8. C语言学习书籍推荐《C陷阱与缺陷》下载

    下载地址:点我 凯尼格 (作者), 高巍 (译者) <C和C++经典著作:C陷阱与缺陷>适合有一定经验的C程序员阅读学习,即便你是C编程高手,<C和C++经典著作:C陷阱与缺陷> ...

  9. mplayer+ffmpeg 组合截图

    mplayer截图的优点:对于一个时长很长的视频,可以任意指定一个时间点截图,mplayer会直接跳到这个时间点开始解码截图: 缺点:由于是直接跳到指定的时间点,也就是直接跳过了之前的帧,这样解码出来 ...

  10. 和朱晔一起复习Java并发(三):锁(含锁性能测试)

    这个专题我发现怎么慢慢演化为性能测试了,遇到任何东西我就忍不住去测一把.本文我们会大概看一下各种锁数据结构的简单用法,顺便也会来比拼一下性能. 各种并发锁 首先,我们定一个抽象基类,用于各种锁测试的一 ...