第二章

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. C运行时的数据结构

    本文描述一下:C运行时的数据结构,相关的段,压栈等 unix默认的编译器会将编译生成的文件默认命名为a.out 目标文件和可执行文件可以有几种不同的格式,所有这些不同格式具有一个共同的概念,那就是段. ...

  2. C++指针内存

    这是一个关于C++指针的问题,思考了一下 void GetMemory(char *p, int num){ p = (char*) malloc (sizeof(char) * num); } vo ...

  3. CentOS7_RAID5_LVM_SAMBA

    1.在CentOS 7上构建RAID5.LVM和SAMBA服务器(1)——预备http://blog.csdn.net/kingfox/article/details/51099617 2.在Cent ...

  4. org.apache.jasper.JasperException: Expecting "jsp:param" standard action with "name" and "value" attributes

      jasper  英 ['dʒæspə]  美 ['dʒæspɚ] 跟读 口语练习 n. 碧玉:墨绿色 n. (Jasper)人名:(德)雅斯佩尔:(西)哈斯佩尔 JasperException 异 ...

  5. python仿微软记事本

    # -*- coding=utf-8 -*- from tkinter import filedialog import tkinter as tk import tkinter.scrolledte ...

  6. Android最佳性能实践(二)——分析内存的使用情况

    由于Android是为移动设备开发的操作系统,我们在开发应用程序的时候应当始终把内存问题充分考虑在内.虽然Android系统拥有垃圾自动回收机制,但这并不意味着我们就可以完全忽略何时去分配或释放内存. ...

  7. Maven项目的发布,发布到Nexus

    原文:http://blog.csdn.net/mexican_jacky/article/details/50277505 第一步: 配置信息如下: <!-- 发布项目的配置 -->  ...

  8. HBase 的存储结构

    HBase 的存储结构 2016-10-17 杜亦舒 HBase 中的表常常是超级大表,这么大的表,在 HBase 中是如何存储的呢?HBase 会对表按行进行切分,划分为多个区域块儿,每个块儿名为  ...

  9. mybatis <sql /> 配置中 返回值 resultType 与resultMap的区别

    mybatis的objectMapper.xml中, 1) 若<sql /> 查询语句中配置的是resultType=“实体类/DTO” ,则从mybatis返回的键值对结果集(Map)会 ...

  10. html 实体 => htmlspecialchars

    因为没有办法判断用户输入的数据是否安全, 可能含有和sql语句相冲突的字符,比如 '  " < >,那就有一个办法, 把这些特殊字符处理一下,比如吧空格符号变成 ,这样sql语句 ...