一、标识符和关键字
        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. 关于C51 keil使用中.c文件的链接心得

    这个问题一直烦了我很久,使用C51 keil进行.c文件链接的时候,老是报错诸如下面的信息: *** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: a ...

  2. 分析了16年的福利彩票记录,原来可以用Python这么买彩票

    目录 0 引言 1 环境 2 需求分析 3 代码实现 4 后记 0 引言 上周被一则新闻震惊到了,<2454万元大奖无人认领!福彩史上第二大弃奖在广东中山产生 >,在2019年5月2日开奖 ...

  3. 从零到一,利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernetes v1.10.0

    说明 初步接触kubernets,记录学习过程 本教程目的利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernets v1.10.0 环境信息 节点IP地址 角色 ...

  4. java 获取客户端的ip地址

    import javax.servlet.http.HttpServletRequest; import java.net.InetAddress; import java.net.UnknownHo ...

  5. 分享常见的HTTP状态码

    本内容摘抄自RUNOOB.COM 当浏览一个网页时,浏览器会向网页所在服务器发出请求.当浏览器确定接收并显示网页之前,此网页所在的服务器会返回一个含有HTTP状态码(HTTP Status Code) ...

  6. svn unable to connect to a repository url 计算机积极拒绝

    网上应该说启动server服务,首先找不到这个服务,后来下载个软件有了,启动还是不行.clear了所有saved data之后也是不行. 解决方法:Network中 Enable proxy Serv ...

  7. concat的应用

    今天遇到一个问题,有一张车辆信息表,一张车辆品牌表,他们之间的品牌进行关联, 但是车辆信息表中品牌的名称较长,而品牌表名称较短.例如:车辆表:东风标致:品牌表:标致. 为了达到两种表的“模糊关联”. ...

  8. 寻觅Azure上的Athena和BigQuery (二):神奇的PolyBase

    前情回顾 在“数据湖”概念与理论逐渐深入人心的今天,面向云存储的交互式查询这个需求场景显得愈发重要.这是因为原生的云存储(主要指S3这样的对象存储)既能够容纳大容量的明细数据,又能在性能和成本间取得一 ...

  9. py+selenium 直接给日期赋值,控制台调试报错【已解决】

    目标:给带日期控件的输入框赋值. 百度去搜索让你各种去只读readonly属性,再send_keys 方法: 其实既然可以去除readonly属性,那就可以直接给属性赋值,将两行代码缩为一行. dri ...

  10. js继承的关系(一)

    js继承的关系多,而且拥有不同的特点.同时也是必须了解掌握的知识点.首先,要先知道什么是构造函数? 构造函数 构造函数和普通函数的区别:仅在于调用方式不同,任何函数,只要通过 new 操作符来调用,那 ...