一、基本语法元素


1.空白和注释及语句

(1)空白:

换行符、回车符、空格键、水平定位键(Tab) 编译器会忽略掉多余的空白

作用:增加程序的易读性

(2)注释:主要作用是将代码解释其功能和作用,在编译时,编译器会直接将其丢弃,不会进入执行阶段

1)// 在一行内的注释,此种注释是同一行内的注释如果在其后换行,则注释自动失效

2)/*一行或多行的注释 */ 此种注释区域是从/*到*/为止,在这种注释区域内可以换行,其注释不会失效

3)/**文档注释 */ Javadoc,提取类头、所有公有方法的头,以及以特定形式 写的注释。此种注释不同与上两个注释只为当前代码的当前区域代码做解释,而是会被特定的java工具提取。做成文档,所以这种注释通常放在方法和类的前面,用来解释对应的方法或类说明性文字。

(3)语句、分号和块

语句:最小执行单位,是int a 是java执行语句最小单位

各语句以分号“;”,用分号把语句隔开,并将每个执行单位分开

分隔 语句块:{ }

2.关键字(保留字),有特殊用途,不能作用普通的标识符。

Abstract boolean break byte case cast catch char
class const continue defaultdo double else
extendsfalse final finally float for future generic
goto if implements import inner instanceof int
interface long native new null operator outer
package private protected public rest return short
static strictfp super switch synchronized this
throw throws transient true try var void volatile
while

3. 标识符 标识符:由字母、数字、下划线(_)、美元符($) 数字不能作为标识符的开头。 区分大小写。

长度没限制。 标识符用作变量名、方法名、接口名和类名等。

Java编码格式:Java源码使用的是Unicode码,而不是ASCII码。16bits。

举例:正确的标识符: Identifier username User_name _sys_var1 $chang sizeof

举例:错误的标识符: 2Sun class #myname

4.Java编程风格

类名或接口名:每个单词的首字母大写:HelloWorld,Customer,SortClass。。。

方法名:首字母小写,其余各单词的首字母大写:getName,setAddress,searchKey。。。

常量名:字母全部大写,单词之间用下划线分隔。

BLUE_COLOR 变量名:首字母小写,其余各单词的首字母大写。

If-else所有语句都使用一对大括号括起来,即使只有一条语句。 缩进对齐。 代码注释。

5.基本数据类型总表

所有类型的大小和表示都是固定的,不依赖于具体的实现,所以 sizeof运算符没有意义。

【1】整数类型

(1).整数类型byte,short,int,long的存储长度与表示范围

(2)整数类型byte,short,intm,long的表示与书写

1)前缀表示法

进制表示: 十进制:1~9开头

123 八进制:0开头,0~7 077 = 7x8+7x1 = 63(十进制)

十六进制:0x开头,0~9,a~f(大小写均可) 0xBABE = 11x163 + 10x162 + 11x161 + 14x160 = 11x4096 + 10x256 + 11x16 + 14 = 47806

2)后缀表示法

整型常量是int型;如果想表示长整型,则在数后面明确写出字母L 、l(大小写均可)。

2L 077L 0xbabeL 整型常量最大值和最小值: Integer.MAX_VALUE,Integer.MIN_VALUE Long.MAX_VALUE, Long.MIN_VALUE

【2】浮点数类型,float与double类型

(1)浮点数书写表示法

1、float :单精度,32bits,1.4e-45f~3.4028235+38f

2、double:双精度,64bits,4.9e+324d~1.7976931348623157e+308d

3、数值常量包含:小数点、指数部分(字符E),数的后面有字母F 或D,则为浮点数。

4、浮点数默认为double,除非用字符F明确说明。 5.31 -39.27 5f 0.001327e+6

(2)浮点数的表示法

【3】字符类型:char

1、单个字符用char类型表示。

2、一个char表示一个Unicode字符,用16 bits无符号整数表示,范 围0-65535。

3、常量值用单引号(’)括起来,分为普通字符和转义字符。 普通字符:’a’

(1)字符类型的表示

【4】有些字符在Java语言中有特殊的含义,表示时用转义字符。

【5】布尔类型:boolean

1、逻辑值有2个状态。

2、Java中用boolean类型表示,也称逻辑类型。

3、true和false,全小写,8 bits表示。

4、Java是严格数据类型语言,不允许数值类型和布尔类型之间进行 转换。

6.java语言的细节与语言特点的解释:

(1)在java中未被初始化的变量是不能被使用;

(2)java中的布尔型变量就是布尔型变量,不能用其它数据类型来表示;

(3)java是一个完全面向对象的语言,即使是一个基本数据类型也有对应的包装对象类;

(4)java一般是把定义与赋值一起使用,并称为声明;

(5)当把一个实例赋值给一个标识符,一个实例需要通过new或get方法返回对象的类实体;

java的数据和表达式的更多相关文章

  1. java 8 中lambda表达式学习

    转自 http://blog.csdn.net/renfufei/article/details/24600507 http://www.jdon.com/idea/java/10-example-o ...

  2. Java 终于有 Lambda 表达式啦~Java 8 语言变化——Lambda 表达式和接口类更改【转载】

    原文地址 en cn 下载 Demo Java™ 8 包含一些重要的新的语言功能,为您提供了构建程序的更简单方式.Lambda 表达式 为内联代码块定义一种新语法,其灵活性与匿名内部类一样,但样板文件 ...

  3. Java中数据类型转换&基本类型变量和对象型变量

    1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型    byte,short,int,lo ...

  4. java MVEL2/Spring EL表达式、直接调用、反射性能实测

    import java.io.Serializable; import java.lang.reflect.Field; import java.util.HashMap; import java.u ...

  5. Java代码三级跳——表达式、语句和代码块

    Java代码三级跳—表达式.语句和代码块 表达式(expression):Java中最基本的一个运算.比如一个加法运算表达式.1+2是一个表达式,a+b也是. 语句(statement):类似于平时说 ...

  6. java 线程数据同步

    java 线程数据同步 由买票实例 //java线程实例 //线程数据同步 //卖票问题 //避免重复卖票 //线程 class xc1 implements Runnable{ //定义为静态,可以 ...

  7. java将数据写入到txt文件中(txt有固定的格式)

    java将数据写入到txt文件中,这个应该对于学过java I/O的人来说是很简单的事情了,但是如果要将数据以固定的格式写入到txt文件中,就需要一定的技巧了. 这里举个简单的例子,以供参考: 比如我 ...

  8. JAVA 大数据内存耗用测试

    JAVA 大数据内存耗用测试import java.lang.management.ManagementFactory;import java.lang.management.MemoryMXBean ...

  9. Java大数据应用领域及就业方向

    最难毕业季,2017高校毕业生达到795万,许多学生面临着毕业即失业的尴尬.面对着与日俱增的竞争形势和就业压力,很多毕业生选择去知了堂学习社区镀金,以提高自己的就业竞争力,其中Java大数据是学生选择 ...

  10. 为什么Java大数据是最火爆的编程语言?

    未来10年将是大数据,人工智能爆发的时代,到时将会有大量的企业需要借助大数据,而Java最大的优势就是它在大数据领域的地位,目前很多的大数据架构都是通过Java来完成的. 在这个Android.iOS ...

随机推荐

  1. django学习:转载

    https://www.cnblogs.com/ginvip/p/6894690.html https://www.cnblogs.com/yangmv/p/5327477.html https:// ...

  2. vue 在 v-for 时给每项元素绑定事件需要用事件代理吗?为什么?

    vue本身不做事件代理(react将所有事件都委托到document上,然后进行派发) 普通html元素和在组件上挂了.native修饰符的事件.最终EventTarget.addEventListe ...

  3. 在控制台中输入msqyl一直报ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost'错误

    错误: 在绿色Mysql的bin文件下打开cmd,输入mysql,一直报ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' ...

  4. js操作网页元素

    二.操作网页元素 1.查找网页元素 给标签设置id属性,一个网页中id的值不能出现重复的 <button id="btn">按钮</button> 2.给按 ...

  5. 【python】绘图,颜色,线型

    颜色 最好用的:在网站上找到对应使用十六进制RGB/RGBA字符串表示颜色 可以看颜色及其对应色号名称:https://xkcd.com/color/rgb/ 参考:matplotlib指定绘图颜色的 ...

  6. curl下载远程图片到服务器

    <?php //curl下载远程图片到服务器 方法 function download($url, $path = 'images/'){ $ch = curl_init(); $names = ...

  7. Unit Test下使用H2内存数据库

    1.Maven引入包 <dependency> <groupId>com.h2database</groupId> <artifactId>h2< ...

  8. md5加密js内容

    避免以后都得百度,直接留一份存档 /* * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message * Diges ...

  9. 零知识证明(Zero-Knowledge Proof)

    零知识证明(Zero Knowledge Proof)指的是,证明的人可以向验证的人,在不透露任何有用信息的情况下,使得验证者相信该结论是对的. 三种零知识证明技术:zk-SNARKs, Zk-STA ...

  10. Spring系列之类型转换-12

    目录 类型转换 转换器 SPI 使用`ConverterFactory` 使用`GenericConverter` `ConversionService` 配置一个`ConversionService ...