栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA基础介绍

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA基础介绍

目录

1.1 Java程序的基本结构

1.2 基本数据类型

1.3 变量与常量

1.4 运算符

1.5 类型转换

1.6 代码注释和编码规范


1.1 Java程序的基本结构

1、包声明

一个Java应用程序是由若干个类组成的。在下图中就是一个类名为twoSum的类,语句package com.company 为声明该类所在的包,package为包的关键字

2、声明成员变量和局部变量

通常将类的属性称之为类的全局变量(成员变量),将方法中的属性称之为局部变量。全局变量声明在类体中,局部变量声明在方法体中。全局变量和局部变量都有各自的应用范围。在下图中nums便是成员变量,target是局部变量

3、编写主方法

main()方法是类体中的主方法。该方法从“{”号开始,至“}”号结束。public、static和void分别是main()方法的权限修饰符、静态修饰符和返回值修饰符,Java程序中的main()方法必须声明为public static void。String[] args是一个字符串类型的数组,它是main()方法的参数(以后章节中将作详细的介绍)。main()方法是程序开始执行的位置。

4、导入API类库

在Java语言中可以通过import关键字导入相关的类。在JDK的API中(应用程序接口)提供了130多个包,如java.awt、java.io等。可以通过JDK的API文档来查看这些类,其中主要包括类的继承结构、类的应用、成员变量表、构造方法表等,并对每个变量的使用目的作了详细的描述,因此,API文档是程序开发人员不可或缺的工具。

1.2 基本数据类型

1、整数类型

整数类型——byte

使用byte关键字来定义byte型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。byte型是整型中所分配的内存空间是最少的,只分配1个字节;取值范围也是最小的,只在-128和127之间,在使用时一定要注意,以免数据溢出产生错误。

整数类型——short

short型即短整型,使用short关键字来定义short型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。系统给short型分配2个字节的内存,取值范围也比byte型大了很多,在-32768和32767之间,虽然取值范围变大,但是还是要注意数据溢出。

整数类型——int

int型即整型,使用int关键字来定义int型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。int型变量取值范围很大,在-2147483648和2147483647之间,足够一般情况下使用,所以是整型变量中应用最广泛的。

整数类型——long

long型即长整型,使用long关键字来定义long型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。而在对long型变量赋值时结尾必须加上“L”或者“l”,否则将不被认为是long型。当数值过大,超出int型范围的时候就使用long型,系统分配给long型变量8个字节,取值范围则更大,在-9223372036854775808和9223372036854775807之间。

2、浮点类型

浮点类型——float

float型即单精度浮点型,使用float关键字来定义float型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。在对float型进行赋值的时候在结尾必须添加“F”或者“f”,如果不加,系统自动将其定义为double型变量。float型变量的取值范围在1.4E-45和3.4028235E-38之间。

浮点类型——double

double型即双精度浮点型,使用double关键字来定义double型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值。在给double型赋值时,可以使用后缀“D”或“d”明确表明这是一个double类型数据,但加不加并没有硬性规定,可以加也可以不加。double型变量的取值范围在4.9E-324和1.7976931348623157E-308之间。

3、字符类型

布尔类型又称逻辑类型,只有两个值“true”和“false”,分别代表布尔逻辑中的“真”和“假”。使用boolean关键字声明布尔类型变量,通常被用在流程控制中作为判断条件。

4、布尔类型

布尔类型又称逻辑类型,只有两个值“true”和“false”,分别代表布尔逻辑中的“真”和“假”。使用boolean关键字声明布尔类型变量,通常被用在流程控制中作为判断条件。

1.3 变量与常量

1、标识符和关键字

标识符

      标识符是Java程序中必须使用的,但也不是随便使用的,有一定的规则。本小节将介绍什么是标识符和标识符的命名规则。 标识符可以简单地理解为一个名字,用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。 int i = 100; System.out.println(i);// 在控制台输出信息 变量名i就是标识符,标识符由程序员所起,但并不是随便取的,也有一定的规则,下面将介绍标识符的命名规则。

       标识符虽然可以任意取名,但是也要遵循一定的规则,标识符的几点命名规则如下所示:     Java语言的标识符由字母、数字、下划线和美元符号组成,第一个字符不能为数字。    

     Java语言使用Unicode标准字符集,最多可以识别65535个字符。因此,Java语言中的字母可以是Unicode字符集中的任何字符,包括拉丁字母、汉字、日文和其他许多语言中的字符。     标识符不能是Java的关键字和保留字。    

     在Java语言中标识符是区分大小写的,如果两个标识符的字母相同但是大小写不同,就是不同的标识符

关键字

  int    public    this    finally    boolean    abstract continue    float    long    short    throw    throws return    break    for    static    new    interface if    double    default    byte    do    case strictfp    package    super    void    try    switch else    catch    implements    private    final    class extends    volatile    while    synchronized    instanceof    char protecte    importd    transient    implements    dafaule

2、声明变量

      在程序设计中,变量的使用是一个十分重要的环节,定义一个变量,就是要告诉编译器(compiler)这个变量属于哪一种数据类型,这样编译器才知道需要配置多少空间,以及能存放什么样的数据。变量都有一个变量名,变量名必须是合法的标识符,内存空间内的值就是变量值。在声明变量时可以是不给予赋值,也可以是直接赋给初值。

例如:

int a, b, c;         // 声明三个int型整数:a、 b、c

int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值

byte z = 22;     // 声明并初始化 z

String s = "runoob"; // 声明并初始化字符串 s

double pi = 3.14159; // 声明了双精度浮点型变量 pi

char x = 'x';        // 声明变量 x 的值是字符 'x'。

Java语言支持的变量类型有:

  • 类变量:独立于方法之外的变量,用 static 修饰。
  • 实例变量:独立于方法之外的变量,不过没有 static 修饰。
  • 局部变量:类的方法中的变量。

也可直接参考变量类型

3、声明常量

     在程序运行过程中一直不会改变的量称为常量(constant),通常也被称为“final变量”。常量在整个程序中只能被赋值一次。在为所有对象共享的值时,常量是非常有用的。例如:

public static final String DEPARTMENT = "开发人员";

4、变量的有效范围

    变量的有效范围是指程序代码能够访问该变量的区域,若超出变量所在区域访问变量则编译时会出现错误。在程序中,一般会根据变量能够访问的区域将变量分为“成员变量”和“局部变量”。

1.4 运算符

1、赋值运算符

     赋值运算符即“=”,是一个二元运算符(即对两个操作数进行处理),其功能是将右方操作数所含的值赋值给左方的操作数,语法如下所示: 变量类型 变量名 = 所赋的值;

操作符描述例子
=简单的赋值运算符,将右操作数的值赋给左侧操作数C = A + B将把A + B得到的值赋给C
+ =加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数C + = A等价于C = C + A
- =减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数C - = A等价于C = C - A
* =乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数C * = A等价于C = C * A
/ =除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数C / = A,C 与 A 同类型时等价于 C = C / A
(%)=取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数C%= A等价于C = C%A
<< =左移位赋值运算符C << = 2等价于C = C << 2
>> =右移位赋值运算符C >> = 2等价于C = C >> 2
&=按位与赋值运算符C&= 2等价于C = C&2
^ =按位异或赋值操作符C ^ = 2等价于C = C ^ 2
| =按位或赋值操作符C | = 2等价于C = C | 2

2、算术运算符

    Java中的算术运算符主要有+(加号)、-(减号)、*(乘号)、/(除号)和%(求余),它们都是二元运算符。

操作符描述例子
+加法 - 相加运算符两侧的值A + B 等于 30
-减法 - 左操作数减去右操作数A – B 等于 -10
*乘法 - 相乘操作符两侧的值A * B等于200
/除法 - 左操作数除以右操作数B / A等于2
取余 - 左操作数除以右操作数的余数B%A等于0
++自增: 操作数的值增加1B++ 或 ++B 等于 21(区别详见下文)
--自减: 操作数的值减少1B-- 或 --B 等于 19(区别详见下文)

3、自增和自减运算符

    自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型变量。放在操作元前面的自增、自减运算符,会先将变量的值加1(减1),然后再使该变量参与表达式的运算;放在操作元后面的自增、自减运算符,会先使变量参与表达式的运算,然后再将该变量加1(减1) 。

4、比较运算符(也叫关系运算符)

     比较运算符属于二元运算符,用于程序中的变量和变量之间、变量和常量之间以及其他类型的信息之间的比较。比较运算符的运算结果是boolean型,当运算符对应的关系成立时,运算结果是true,否则结果是false。比较运算符通常用在条件语句中来作为判断的依据。

运算符描述例子
==检查如果两个操作数的值是否相等,如果相等则条件为真。(A == B)为假。
!=检查如果两个操作数的值是否相等,如果值不相等则条件为真。(A != B) 为真。
检查左操作数的值是否大于右操作数的值,如果是那么条件为真。(A> B)为假。
检查左操作数的值是否小于右操作数的值,如果是那么条件为真。(A
>=检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。(A> = B)为假。
<=检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。(A <= B)为真。

5、逻辑运算符

     逻辑运算符包括&&(&)(逻辑与)、||(|)(逻辑或)和!(逻辑非),返回值为布尔类型的表达式,操作元也必须是boolean型数据。和比较运算符相比,逻辑运算符可以表示更加复杂的条件,例如连接几个关系表达式进行判断。在逻辑运算符中,除了“!”是一元运算符之外,其余的都是二元运算符。

操作符描述例子
&&称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。(A && B)为假。
| |称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。(A | | B)为真。
称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。!(A && B)为真。

6、位运算符

      位运算符用于处理整型和字符型的操作数,对其内存进行操作,数据在内存中以二进制的形式表示,例如int型变量7的二进制表示是00000000 00000000 00000000 00000111,-8的二进制表示是111111111 111111111 1111111 11111000,最高位是符号位,0表示正数,1表示负数。

操作符描述例子
如果相对应位都是1,则结果为1,否则为0(A&B),得到12,即0000 1100
|如果相对应位都是 0,则结果为 0,否则为 1(A | B)得到61,即 0011 1101
^如果相对应位值相同,则结果为0,否则为1(A ^ B)得到49,即 0011 0001
按位取反运算符翻转操作数的每一位,即0变成1,1变成0。(〜A)得到-61,即1100 0011
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。A << 2得到240,即 1111 0000
>> 按位右移运算符。左操作数按位右移右操作数指定的位数。A >> 2得到15即 1111
>>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。A>>>2得到15即0000 1111

7、三元运算符

三元运算符是Java中唯一一个三目运算符,其操作元有三个,第一个是条件表达式,其余的是两个值,条件表达式成立时运算取第一个值,不成立时取第二个值,示例代码如下所示: boolean b = 20 < 45 ? true : false;

8、运算符优先级

类别操作符关联性
后缀() [] . (点操作符)左到右
一元expr++ expr--从左到右
一元++expr --expr + - ~ !从右到左
乘性 * /%左到右
加性 + -左到右
移位 >> >>>  << 左到右
关系 > >= < <= 左到右
相等 ==  !=左到右
按位与左到右
按位异或^左到右
按位或|左到右
逻辑与&&左到右
逻辑或| |左到右
条件?:从右到左
赋值= + = - = * = / =%= >> = << =&= ^ = | =从右到左
逗号左到右

1.5 类型转换

1、隐式类型转换

Java中8种基本类型可以进行混合运算,不同类型的数据在运算过程中,首先会自动转换为同一类型,再进行运算。数据类型根据占用存储空间的大小分为高低不同的级别,占用空间小的级别低,占用空间大的级别高,自动类型转换遵循低级到高级转换的规则。

规则:
从存储范围小的类型到存储范围大的类型。

转换方向:
byte→short(char)→int→long→float→double(这里指的是只有前面的数据类型能随便转换成后面的)
—实际开发中这样的类型转换很多,但没有为这种转换提供专门的语法,都是由虚拟机自动完成。

例子:
byte b = 10;short sh = b;这里在赋值时,JVM首先将b的值转换为short类型,然后再赋值给sh。

2、显式类型转换

   当把高精度的变量的值赋给低精度的变量时,必须使用显式类型转换运算(又称强制类型转换)。语法如下所示: (类型名)要转换的值

   规则:
从存储范围大的类型到存储范围小的类型。

转换方向:
double→float→long→int→short(char)→byte
强制类型转换通常都会存储精度的损失,所以使用时需要谨慎。
—需要在被转换值的前面添加个括号,括号里面写的是希望得到的数据类型。

例子:
int m = 1234;
byte b = (byte)m;//-46
解析:
整数强制转换为整数时取数字的低位,例如int类型的变量转换为byte类型时,则只取int类型的低8位(也就是最后一个字节)的值。
则m的值还是12345,而b的值为-10。b1的计算方法如下:m的值转换为二进制是10011010010,取该数字低8位的值作为b的值,则b
的二进制值是11010010,按照机器数的规定,最高位是符号位,1代表负数,在计算机中负数存储的是补码,则该负数的原码是10101110,
该值就是十进制的-46。

1.6 代码注释和编码规范

1、代码注释

通过在程序代码中添加注释可提高程序的可读性,注释中包含了程序的信息,可以帮助程序员更好地阅读和理解程序。在Java源程序文件的任意位置都可添加注释语句。注释中的文字Java编译器并不进行编译,所有代码中的注释文字并不对程序产生任何影响。Java语言提供了3种添加注释的方法,分别为单行注释、多行注释和文档注释。

单行注释:

以双斜杠“//”标识,只能注释一行内容,用在注释信息内容少的地方

//salary是静态的私有变量

多行注释:

包含在“”之间,能注释很多行的内容。为了可读性比较好,一般首行和尾行不写注释信息(这样也比较美观好看),如图 所示。

 

注意:多行注释可以嵌套单行注释,但是不能嵌套多行注释和文档注释。

文档注释:

包含在“”之间,也能注释多行内容,一般用在类、方法和变量上面,用来描述其作用。注释后,鼠标放在类和变量上面会自动显示出我们注释的内容,如图所示。

注意:文档注释能嵌套单行注释,不能嵌套多行注释和文档注释,一般首行和尾行也不写注释信息。

 

编码规范

在学习开发的过程中要养成良好的编码规范,因为规整的代码格式会给程序的开发与日后的维护提供很大方便。总结的编码规范如下:

  • 每条语句要单独占一行
  • 每条命令都要以分号结束
  • 声明变量时要分行声明
  • Java语句中多个空格看成一个
  • 不要使用技术性很高、难懂、易混淆判断的语句
  • 对于关键的方法要多加注释

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/327755.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号