Java入门基础之Java的基本语法与Java所支持的数据类型
Java应用程序可以被定义为对象的集合,这些对象通过调用各自的方法来进行通信。下面让我们具体看一看类,对象,方法,实体变量是什么含义。
对象:对象具有状态和行为。例如:狗有它的状态—颜色,名字,品种,同时也有行为—摇尾巴,汪汪叫,吃东西。对象时类的一个实例。
类:类可以被定义为描述对象所支持的类型的行为和状态的模板或蓝图。
方法:方法是一种基本的行为。类中可以包含很多方法。在方法中,可以编写逻辑,操纵数据,执行动作。
实体变量:每个对象都有它的特殊的实体变量的集合,一个对象的状态是由那些实体变量所被赋的值所决定的。
第一个Java程序
让我们看一下下面可以输出“HelloWorld”的代码。
publicclassMyFirstJavaProgram{ /*Thisismyfirstjavaprogram. *Thiswillprint'HelloWorld'astheoutput */ publicstaticvoidmain(String[]args){ System.out.println("HelloWorld");//printsHelloWorld } }
让我们看一下如何保存这个文件,编译运行这个程序。请按照以下步骤操作:
打开记事本添加上述代码
以MyFirstJavaProgram.java为文件名保存文件
打开命令提示符窗口转到你保存类的位置。假设是C:\
在窗口中输入javacMyFirstJavaProgram.java然后按回车来编译你的代码。如果你的代码没有错误,那么命令提示符将会转到下一行(假设:路径变量设置成功)。
现在输入javaMyFirstJavaProgram来运行你的程序
你将会看到屏幕上显示“HelloWorld”
C:>javacMyFirstJavaProgram.java C:>javaMyFirstJavaProgram
HelloWorld
基本语法
关于Java程序,记住一下几点很重要。
大小写敏感性:Java是一种大小写敏感的语言,这就意味着Hello和hello在Java中代表不同的意思。
类的命名:所有类的名称首字母必须大写。
如果类名称中包含几个单词,那么每个单词的首字母都要大写。
例如类MyFirstJavaClass
方法的命名:所有方法名称必须以小写字母开头。
如果方法名称中包含几个单词,那么其中的每个单词的首字母都要大写。
例如publicvoidmyMethodName()
程序文件名:程序的文件名必须和类的名称准确匹配。
但保存文件时,你应当以类的名称保存(注意区分大小写),并在文件名后加.java的后缀(如果文件名和类名不匹配那么将无法编译你的程序)。
例如:假设类名是MyFirstJavaProgram,那么文件名就应该是MyFirstJavaProgram.java。
publicstaticvoidmain(Stringargs[]):Java程序都是从main()方法开始处理的,这个方法是Java程序的强制性的部分。
Java标识符
Java的所有的组成部分都要有自己的名称。类、变量和方法的名称称为标识符。
在Java中,需要记住关于标识符的一下几点。如下:
所有标识符必须以字母(A到Z或者a到z)、货币字符($)或者下划线(_)开头。
在第一个标识符之后可以有任意字母组合。
关键字不能被用作标识符。
大多数标识符需要区分大小写。
合法标识符的例子:age,$salary,_value,__1_value
非法标识符的例子:123abc,-salary
Java修饰符
如其语言一样,方法和类等等是可以通过修饰符修饰的。Java中有两种修饰符:
访问修饰符:default,public,protected,private
非访问修饰符:final,abstract,strictfp
我们将在下一节继续学习修饰符相关知识。
Java关键字
下面列出的是Java中保留的关键字。这些关键字不能用作常量、变量和其他标识符的名字。
关键字 | 关键字 | 关键字 | 关键字 |
---|---|---|---|
abstract | assert | boolean | break |
byte | case | catch | char |
class | const | continue | default |
do | double | else | enum |
extends | final | finally | float |
for | goto | if | implements |
import | instanceof | int | interface |
long | native | new | package |
private | protected | public | return |
short | static | strictfp | super |
switch | synchronized | this | throw |
throws | transient | try | void |
volatile | while |
Java中的注释
Java像C和C++一样支持单行或多行注释。所有注释中的字母都会被Java编译器忽略。
publicclassMyFirstJavaProgram{ /*Thisismyfirstjavaprogram. *Thiswillprint'HelloWorld'astheoutput *Thisisanexampleofmulti-linecomments. */ publicstaticvoidmain(String[]args){ //Thisisanexampleofsinglelinecomment /*Thisisalsoanexampleofsinglelinecomment.*/ System.out.println("HelloWorld"); } }
使用空行
一行只有空格的行可能是注释,这样的行叫做空行,Java会完全忽略它。
基本数据类型
变量就是用来储存值而保留的内存位置。这就意味着当你创建一个变量时就会在内存中占用一定的空间。
基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字字母。
Java中有两种有效地数据类型:
- 原始数据类型
- 引用数据类型
- 原始数据类型
Java支持8种原始数据类型。原始数据类型是由该语言预先定义的并用关键词命名的。下面让我们深入学习一下这8种数据类型。
字节型(byte)
字节型是一种8位有正负的二进制整数
- 最小值是-128(-2^7)
- 最大值是127(2^7-1)
- 默认值为0
字节型数据类型主要是为了在大型数组内节省空间,主要是替代整数由于字节型比整数小4倍。
例如:bytea=100,byteb=-50
短整数(short)
短整数是一种16位有正负的二进制整数
- 最小值是-32768(-2^15)
- 最大值是32767(2^15-1)
短整数类型的数据也可以像字节型一样用于节省空间。短整数比整数小两倍
- 默认值为0
例如:shorts=10000,shortr=-20000
整数型(int)
整数型是一种32位有正负的二进制整数
- 最小值是-2,147,483,648(-2^31)
- 最大值是2,147,483,647(2^31-1)
整数型一般默认被应用于整数值除非担心内存不够用。
- 默认值为0
例如:inta=100000,intb=-200000
长整型(long)
长整型是一种64位有正负的二进制整数
- 最小值是-9,223,372,036,854,775,808(-2^63)
- 最大值是9,223,372,036,854,775,807(2^63-1)
这种数据类型一般是在需要比整数型范围更大时应用。
- 默认值为0L
例如:longa=100000L,intb=-200000L
浮点型(float)
浮点型数据是一种单精度的32位IEEE754标准下的浮点数据。
浮点型数据主要是为了在大型浮点数字数组中节约内存。
- 默认值是0.0f。
浮点型数据不能用于如货币这样的精确数据。
例如:floatf1=234.5f
双精度型(double)
双精度型数据是一种双精度的64位IEEE754标准下的浮点数据。
这种数据类型主要是默认被用于表示小数的值,一般是默认的选择。
双精度型数据不能用于如货币这样的精确数据。
- 默认值是0.0d
例如:doubled1=123.4
布尔型(boolean)
布尔型数据代表一个信息比特。
它只有两个可能的值:真(true)和假(false)
这种数据类型用于真假条件下的简单标记。
- 默认值是假(false)
例如:booleanone=true
字符型(char)
字符型数据是简单的16位Unicode标准下的字符。
- 最小值是:'\u0000'(或0)。
- 最大值是:'\uffff'(或65,535)。
字符型数据可以用来储存任意字母。
例如:charletterA(字符型的字母A)='A'
引用数据类型
引用数据类型是由类的编辑器定义的。他们是用于访问对象的。这些变量被定义为不可更改的特定类型。例如:Employee,Puppy等等。
- 类对象和数组变量就是这种引用数据类型。
- 任何引用数据类型的默认值都为空。
- 一个引用数据类型可以被用于任何声明类型和兼容类型的对象。
例如:Animalanimal=newAnimal("giraffe");
Java常量
常量是代表固定值的源代码。他们直接以代码的形式代表而没有任何估计。
常量可以被分配给任意的原始变量类型。例如:
bytea=68; chara='A'
字节型,整数型,长整型和短整型也可以由十进制,十六进制和八进制计数系统表示。
当用这些技术系统表示直接量时,前缀0是为了标明八进制,前缀0x是为了标明十六进制。例如:
intdecimal=100; intoctal=0144; inthexa=0x64;
Java中的字符串型常量的规定和其他大多数语言一样,也是要写在双引号中间。字符串型直接量的例子如下:
"HelloWorld" "two\nlines" "\"Thisisinquotes\""
字符和字符串型常量可以包含任意的Unicode字母。例如:
chara='\u0001'; Stringa="\u0001";
Java语言也支持一些特殊的转义序列的字符和字符串直接量。他们是:
转义字符 | 含义 |
---|---|
\n | 换行(0x0a) |
\r | 回车(0x0d) |
\f | 换页(0x0c) |
\b | 退格(0x08) |
\s | 空格(0x20) |
\t | tab |
\" | 双引号 |
\' | 单引号 |
\ | 反斜杠 |
\ddd | 八进制字符(ddd) |
\uxxxx | 十六进制UNICODE字符(xxxx) |