第二章

java基础语法

1、 java关键字

abstract

boolean

break

byte

case

catch

char

class

const

continue

default

do

double

else

extends

assert

final

finally

float

for

goto

if

implements

import

instanceof

int

interface

long

native

new

strictfp

package

private

protected

public

return

short

static

super

switch

synchronized

this

throw

throws

transient

try

void

votile

while

上表列出了所有java编程语言的所有关键字,其中,const和goto不能在java中使用。这主要是为了将C和C++代码转换为java代码。

在java中有三个保留字:true、false、和null,这三个保留字是字面量值,不是关键字,不能被用作标识符,并且对于java编译器有特定的含义。

2、 标识符

在java代码中,我们需要标识代码中的很多元素,包括类名、方法、字段、变量、包名等,我们选择的名称就成为标识符。

  • 标识符不能是关键字或true、false、null;
  • 标识符可以包含字母、数字0-9、_、$;
  • 标识符的第一个字符必须是一个字母、或$;
  • 标识符是区别大小写的,并且没有规定最大长度;

3、 数据类型、变量和常量

在java中,共划分有十一种数据类型。这些数据类型,又根据其使用方式分为基本类型和引用类型两大类。

基本类型如下表所示:

数据类型

关键字

大小

取值范围

字节型

byte

1个字节(8位)

-27~27-1

短整型

short

2个字节(16位)

-215~215-1

整型

int

4个字节(32位)

-231~231-1

长整型

long

8个字节(64位)

-263~263-1

单精度型

float

4个字节(32位)

±1.40239846E~±3.40282347E+8

双精度型

double

8个字节(64位)

±4.94065645841246544E-324~±79769313486231570E+308

字符型

char

2个字节(16位)

\u000~\uFFFF

布尔型

boolean

不确定

true、false

  • 变量

变量用于存储数据。变量是内存中的一小块区域,我们在程序中通过使用变量名来访问该区域。因此每个变量使用前必须先声明(即向JVM申请该内存区域),然后必须进行赋值(即填充申请了的内存空间的内容),最后才能使用。

变量声明包括两个步骤:1、给变量命名;2、指出变量中存储的数据类型。

  • 基本类型:

(1)整型

byte、short、int、long,都是有符号的,表明它们既可以存储正数,又可以存储负数。

(2)浮点型

float和double都可以存储浮点数字。

数值数据表达式执行计算时,从低精度向高精度执行自动类型转换,即

byte<short<int<long<float<double。

(3)布尔型

java中boolean数据类型用来表示布尔值,它适用于逻辑运算,一般用于程序流程控制。布尔类型的值不能赋值给整型变量,即使强制转换也不行。

(4字符型

char类型数据可以被看作整数值,即我们可以使用char类型数据执行算术运算和大小比较运算。

可以用单引号来表示字符字面量。有些不可打印的字符可以用转义符描述。

字符

含义

Unicode表示符

\b

退格

\u0008

\t

制表符

\u0009

\n

换行

\u000a

\r

回车

\u000d

\”

双引号

\u0022

\’

单引号

\u0027

\\

反斜杠

\u005c

字符串

字符串是一序列的字符。字符串不是基本类型,所以需要类来表示,java中用名为String的类来表示字符串对象。

(5引用类型

java中的变量要么是八种基本类型之一,要么是对一个对象的引用。引用类型与基本类型的不同之处在于:引用不包含它所指向的对象的实际数据,而是指向内存中对象所在的位置。

java中出于安全性考虑,不允许程序员直接访问内存。

  • 常量

java中使用关键字final来表示某变量实际上是常量。

习惯上,程序员通常将常量名的所有字母大写。

4、java程序运行期数据区

java虚拟机的内部由类加载器、运行时数据区和执行引擎组成。

对于基本类型的变量,java虚拟机将其放在java栈中;

对于引用类型的变量,引用变量本身放在java栈中,而引用所指向的对象放在java堆中。

5、运算符和表达式

                                

6、注释

在java中有三种方法声明注释:两个正斜线//用于单行注释;

/*…*/用于多行注释;

/**…*/格式用于javadoc工具所用的注释。

java面向对象编程——第二章 java基础语法的更多相关文章

  1. Java面向对象编程 第二章 第一个Java应用

    2.1创建Java源文件 Java应用由一个或多个扩展名为".java"的文件构成,这些文件被称为Java源文件,从编译的角度,则被称为编译单元. 本章包含两个Java源文件:Do ...

  2. 《深入理解java虚拟机》第二章 Java内存区域与内存溢出异常

    第二章 Java内存区域与内存溢出异常 2.2 运行时数据区域  

  3. Java 面向对象编程——第一章 初识Java

      第一章    初识Java 1.  什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简 ...

  4. java面向对象编程--第九章 多态和抽象

    9.1多态 在生物学中,是指一个生物或物种可以有多种不同的形式或阶段: 在OOP中,多态是指一个对象有多种形式的能力. 多态可以说是面向对象编程的精髓所在.java中之所以引入多态的概念,原因之一是它 ...

  5. JAVA / MySql 编程——第二章 初始MySQL

    1. MySQL:        ●  MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.            MySQL最流行的关系型数据库管理系统, ...

  6. Java面向对象编程 第一章 面向对象开发方法概述

    一.软件开发经历的生命周期: ①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护 二.为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点: ① 可重用性 ...

  7. (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识

    开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...

  8. 【程序员翻身计划】Java高性能编程第一章-Java多线程概述

    目标 重点: 线程安全的概念 线程通信的方式与应用 reactor线程模型 线程数量的优化 jdk常用命令 Netty框架的作用 难点 java运行的原理 同步关键字的原理 AQS的抽象 JUC的源码 ...

  9. 《深入理解JAVA虚拟机》----------第二章 JAVA内存区域与内存溢出异常,笔记(下)

    2. HotSpot虚拟机对象探秘 2.1 对象的创建 虚拟机遇到一条New指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载.解析和初 ...

随机推荐

  1. 06 SQL执行计划

    解释计划 与 执行计划的 区别 随着可以得到解释计划输出的开发工具, 比如 toad 的普遍使用, 生成解释计划就变的相当简单. 而不简单的是得到执行计划. 解释计划 EXPLAIN PLAN 用来显 ...

  2. C#操作Excel数据增删改查(转)

    C#操作Excel数据增删改查. 首先创建ExcelDB.xlsx文件,并添加两张工作表. 工作表1: UserInfo表,字段:UserId.UserName.Age.Address.CreateT ...

  3. Data truncated for column xxx

    对于字段XXX,数据发生截断.原因是:字段的取值,不满足约束条件.比如下面的情况: 原来的字段取值为null,现在约束字段not null,就会报错Data truncated for column ...

  4. thinkphp分页效果的制作,按查询条件分页正确做法

    PHP代码: <?php namespace Home\Controller; use Think\Controller; use Home\Clas\Cate; class IndexCont ...

  5. go循环

    Go语言里的For循环语句 更多 0 golang   package main import "fmt" func main() { sum := 0 for i := 0; i ...

  6. Mybatis 的分页插件PageHelper-4.1.1的使用

    Mybatis 的分页插件 PageHelper 项目地址:http://git.oschina.net/free/Mybatis_PageHelper  文档地址:http://git.oschin ...

  7. OpenGL的glPushMatrix和glPopMatrix矩阵栈顶操作函数详解

    OpenGL中图形绘制后,往往需要一系列的变换来达到用户的目的,而这种变换实现的原理是又通过矩阵进行操作的.opengl中的变换一般包括视图变换.模型变换.投影变换等,在每次变换后,opengl将会呈 ...

  8. hiho_1069_最近公共祖先3

    题目 给出一棵家族树,树上的节点可以由名字唯一标识.给出若干个查询,查询的内容为两个名字,结果为两个名字的最近公共祖先. 题目链接: 最近公共祖先 分析 在线的RMQ + LCA 算法,先用dfs将树 ...

  9. STM8s窗口看门狗

    看看窗口看门狗的框图 从图里看出产生复位信号有2个方式: 1 WDGCR寄存器的T6 由1变0,也就是从此寄存器的值从0x40变成0x3F会产生复位信号: 2 当寄存器WDGCR的值大于WDGWR的时 ...

  10. OpneCV 二值图像区域处理

    //--------------------------------------[程序说明]------------------------------------------- // 在图像处理中总 ...