一、关键字:

关键字:被Java语言赋予特定含义的单词。组成关键字的字母全部小写。注:goto和const作为保留字存在,目前并不使用。main并不是关键字。

二、标识符:

标识符:就是给类,接口,方法,变量等起名字时使用的字符序列。

组成规则:英文大小写字母、数字字符、$和_

注意事项:不能以数字开头、不能是Java中的关键字、区分大小写

我们通常会给下面的这些东西起一个标识符:

包、类或者接口、方法和变量、常量

三、注释:

单行注释的格式: //注释文字

多行注释的格式: /*  注释文字  */

文档注释的格式:/** 注释文字 */

注:多行注释不能嵌套使用,而单行是可以的。

文档注释:被javadoc工具解析成一个说明书,面向对象部分的知识中会用到。

四、常量、进制和进制转换

常量:在程序执行的过程中其值不可以发生改变

Java中常量分类:

  • 字面值常量
  • 自定义常量(面向对象部分讲)

1、常见常量:

字符串常量:用双引号括起来的内容

整数常量、

小数常量、

字符常量:用单引号括起来的内容

布尔常量:较为特有,只有true和false

空常量:null(数组部分讲解)

2、进制与转换:

Java针对整数常量提供了4种表现形式:二进制、八进制、十进制、十六进制。

八进制的整数以0开头,十六进制的整数以0x开头。

注:现在的计算机系统很少用八进制的了。二进制表示法太冗长,所以在程序中一般喜欢用十六进制

二进制与八进制的转换:

二进制与十六进制的转换:

3、有符号数据表示法:

在计算机内,有符号数有3种表示法:原码、反码和补码。所有数据的运算都是采用补码进行的。

  • 原码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
  • 反码:正数的反码与其原码相同;负数的反码是对其原码按照位取反,但符号位(最高位)不变。
  • 补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1。

主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。

另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。

五、变量:

变量概述:在程序执行的过程中,在某个范围内其值可以发生改变的量

变量定义格式:数据类型 变量名 = 初始化值;

注:Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间
变量按数据类型划分:

注:引用类型中还有一种特殊的null类型。所谓引用数据类型就是对一个对象的引用,对象包括实例和数组两种。实际上,引用类型变量就是一个指针,只是Java中没有指针这个说法。

变量按被声明的位置划分:

  • 局部变量:方法或语句块内部定义的变量
  • 成员变量:方法外部、类的内部定义的变量

六、八种基本数据类型和类型转换:

1、计算机存储数据的基本单位:

字节(Byte)是:计算机文件大小的基本计算单位。

1个字节(Byte) = 8个位(Bit)

Bit意为“位”或“比特”,是计算机运算的基础;二进制中的一位,是二进制最小信息单位。二进位可以用来表示一个简单的正/负的判断,有两种状态的开关(如电灯开关)。

说明:

  • 在内存计算过程中,字节少的数据运算速度更快;
  • 在硬盘存储中,字节少的数据类型也可充分存入更多的数据。

2、八种基本数据类型:

注:

(1)整数默认:int。声明long型常量必须在数字后面加‘l’或‘L’ ,如: long l1 = 88888888888L; //必须加l否则会出错

(2)浮点型常量(小数)默认:double。声明一个float型常量,则需在数字后面加 f 或 F ,如:double d = 12345.6; //正确   float f = 12.3f; //必须加f否则会出错

(3)Java 字符采用 Unicode 编码,每个字符占两个字节,因而可用十六进制编码形式表示。注:Unicode是全球语言统一编码。Java语言中的字符char可以存储一个中文汉字,因为java语言中的字符占用两个字节。

(4)boolean 类型适于逻辑运算,一般用于程序流程控制。

boolean 类型数据只允许取值 true 或 false ,不可以 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。

(5)byte、short在定义的时候,他们接收的其实是一个int类型的值。这个是自己做了一个数据检测的,如果不再它们的范围内,就报错。
128:10000000
-128:10000000 (这里的1即是符号位,也是数值位)

使用变量注意事项:

  • 作用域:变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量。
  • 初始化值:没有初始化值不能直接使用
  • 在一行上建议只定义一个变量:可以定义多个,但是不建议

3、数据类型转换:

注:boolean类型不能转换为其他的数据类型

  • 默认转换:(从小到大的转换)

byte,short,char—int—long—float—double

byte,short,char相互之间补转换,他们参与运算首先转换为int类型

  • 强制转换:

目标类型 变量名=(目标类型)(被转换的数据);

总结:那么,我们到底用那种转换呢?

一般建议,最好不要随意使用强制类型转换,容易造成数据精度的损失。

(1)容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出;使用时要格外注意。

(2)有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。

面试题:

A:下面两种方式有区别吗?
  float f1 = 12.345f;
  float f2 = (float)12.345;

答案:有区别:f1其实是通过一个double类型转换过来的;而f2本身就是一个float类型。

B:下面的程序有问题吗,如果有,在哪里呢?
  byte b1 = 3;
  byte b2 = 4;
  byte b3 = b1 + b2;
  byte b4 = 3 + 4;

答案:byte b3 = b1 + b2;是有问题的。因为变量相加,会首先看类型问题,最终把结果赋值的也会考虑类型问题。

常量相加,先把结果计算出来,然后看是否在byte的范围内,如果不是,才报错。

C:下面的操作结果是什么呢?
  byte b = (byte)130;

  System.out.println(b);

答案:-126

D:字符参与运算:是查找ASCII里面的值
  'a' 97
  'A' 65
  '0' 48
  System.out.println('a');
  System.out.println('a' + 1);

E:字符串参与运算:这里其实是字符串的拼接
  System.out.println("hello"+'a'+1);
  System.out.println('a'+1+"hello");
  System.out.println("5+5="+5+5);

System.out.println(5+5+"=5+5");

注:这里的+不是加法运算,而是字符串连接符。

Java语法基础(一)----关键字、标识符、常量、变量的更多相关文章

  1. JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算

    JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...

  2. Java基础笔记(2) 程序入口 关键字 标识符 常量 变量

    提醒:关于那些和我一样新鸟来看资料的,能看懂多少看多少,看不懂的就是不重要,重要的你想我自己学习肯定要标注的,这些信息明白每个知识点实际作用就好了,其他的比如等会讲的常量内存,常量池这些都是我找的资料 ...

  3. Java语法基础-final关键字

    final关键字主要用在三个地方:变量.方法.类. 对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改: 如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一 ...

  4. Java语法基础-static关键字

    static关键字说明 “static方法就是没有this的方法.在static方法内部不能调用非静态方法,反过来是可以的.而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法.这 ...

  5. Java语法基础(1)

    Java语法基础(1) 1.      Java是一门跨平台(也就是跨操作系统)语言,其跨平台的本质是借助java虚拟机 (也就是JVM(java virtual mechinal))进行跨平台使用. ...

  6. java中使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?

    java中使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 是引用对象的地址值不能变,引用变量所指向的对象的内容是可以改变. final变量永远指向这个对象,是一个常量指针,而 ...

  7. Java中关于注释、标识符、变量、常量、数据类型、类型转换、转移字符以及数值型的表现形式的详解

    Java文件的注意事项 在同一个Java文件中,可以定义多个类,但是被public修饰的类只能够有一个,并且此类名要与文件名一致. 在同一个类中,可以定义多个方法,但是名字叫做main的方法只能有一个 ...

  8. 【JAVA零基础入门系列】Day4 变量与常量

    这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...

  9. java语法基础(一)

    这个是自己前两年做java视频教程时候的课件.感兴趣的同学可以参考下. 这里是纯粹的语法行总结. editplus的使用 选择项目目录 打开editplus 左侧目录导航栏 可以打开盘符,文件夹 可以 ...

随机推荐

  1. 【GOF23设计模式】外观模式

    来源:http://www.bjsxt.com/ 一.[GOF23设计模式]_外观模式.公司注册流程.迪米特法则 package com.test.facade; public interface 工 ...

  2. 2015年第12本(英文第8本):the Old Man and the Sea 老人与海

    书名:The Old Man and The Sea(老人与海) 作者:Ernest Hemingway 单词数:2.7万 不重复单词数:2600 首万词不重复单词数:1500 蓝思值:940 阅读时 ...

  3. 流媒体一些server

    (1)darwin stream server (2)red5 (3)nginx rtmp

  4. I/O之输出流 OutputStream类

    java的I/O技术可以将数据保存到文本.二进制.ZIP压缩文件中,下面来说说一些基本的常识(今天只讲理论).先来说说流,何为流?“流就是一组有 序的数据序列,根据操作的类型,可以分为输入(Input ...

  5. iOS开发融云即时通讯集成详细步骤

    1.融云即时通讯iOS SDK下载地址   http://rongcloud.cn/downloads  选择iOS   SDK下载 2.进行应用开发之前,需要先在融云开发者平台创建应用,如果您已经注 ...

  6. Visual Studio发布Web项目报错:Unable to add 'xxx' to the Web site. Unable to add file 'xxx'. The specified file could not be encrypted.

    背景 Visual Studio下的Web项目 现象 发布时遇到Unable to add 'xxx' to the Web site.  Unable to add file 'xxx'. The ...

  7. SQLServer中登录名的用户名配置

    其实这个问题困扰我很久了. 今夏(13.7)实习的时候第一次接触sqlserver 当时是统一安排,按部就班的做就行. 那时候链接数据库用的id是sa. 后来自己做小程序时候举得不管什么都用sa登录好 ...

  8. 设置IE兼容模式的几种方法

    一.指定文件兼容性模式要为你的网页指定文件模式,需要在你的网页中使用meta元素放入x-ua-compatible http-equiv 标头.1. 强制ie8使用ie8模式来解析,而且那个兼容性视图 ...

  9. IIS does not list a website that matches the launch url

    233down voteaccepted I hate answering my questions: in my question i stated that i was running VS un ...

  10. PHP模拟发送POST请求之三、用Telnet和fsockopen()模拟发送POST信息

    了解完了HTTP头信息和URL信息的具体内容,我们开始尝试自己动手写一段头信息发送到服务器.Windows内置命令Telnet可以帮助我们发送简单的HTTP请求. 并且TELNET是一个特别灵活的工具 ...