很多朋友想知道Java有什么作用,下面就让我们来看看吧。
JAVA是一个扩展程序,不仅可以对电脑的配置进行更新换代,还可以同步更新软件,运用新的功能也不会出现问题,简单来说,Java程序可以用来开发能在任何计算平台上运行的应用软件。它根本上是一种非常基本且结构细腻的技术,而它对WorldWide Web以及商业的总体影响已可与电子表格对PC机的影响相比拟。
Java介绍
Java是一门面向对象编程语言,Java语言集合了C++的优点,丢弃了缺点,所以Java语言表现的功能强大而简单易用。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,让程序员能够以清晰的思维方式进行复杂的编程。
java工程师的工作内容
1、负责客户端软件产品中服务器后端的工程设计,架构设计以及开发工作;
2、根据项目任务计划按时完成软件编码和单元测试工作;
3、按照开发流程编写相应模块的设计文档等。
Java基本数据类型
1.概述
佛说,大千世界,无奇不有。在这个世界里,物种的多样性,遍地开花,同样,在Java的世界里,也有着异曲同工之妙,Java秉承面向对象的特性,必然少不了区分对象的类型,就像下图的“CuteCat”,它描述着在现实世界中存在的事物,同时也是今天我们要说的Java数据类型。
Java中的数据类型可划分为两种:
1)基本数据类型
基本数据类型是Java语言中数据操作的基础,包括byte、short、int、long、float、double、char、boolean。
2)引用数据类型
引用数据类型包括类(class)、接口(interface)、数组。
如果只看文字描述的话,可能没有那么直观,上图自己体会。
那么首先来看看基本数据类型,不同的数据类型有着不同的默认值以及取值范围,既然取值范围不同,其所占用的内存空间也是不同的。来看下表:
数据类型 | 默认值 | 取值范围 | 内存占用 |
byte | 0 | -128~127(-2^7~2^7-1) | 1字节(8位) |
short | 0 | -32768~32767(-2^15~2^15-1) | 2字节(16位) |
int | 0 | -2,147,483,648~2,147,483,647(-2^31~2^31-1) | 4字节(32位) |
long | 0L | -2^63~2^63-1 | 8字节(64位) |
float(单精度) | 0.0f | 1.4E-45~3.4028235E 38 | 4字节(32位) |
double(双精度) | 0.0d | 4.9E-324~1.7976931348623157E 308 | 8字节(64位) |
char | '\u0000' | '\u0000'(十进制0)~'\uFFFF'(十进制65535) | 2字节(16位) |
boolean | false | true、false | 1字节(8位) |
通过上面的介绍,相信大家对基本数据类型已经有一个大致的了解,接下来继续详细说明。
2.1 bytebyte类型属于整型,最小值为-128,最大值为127,默认值为0,内存占用为1字节。在编写程序时,如果可以确定变量的取值范围,为了节省空间,可以使用byte来存储数据。代码示例:
byte b1 = -128; byte b2 = 127;2.2 short
short类型属于整型,最小值为-32768,最大值为32767,默认值为0,内存占用为2字节。代码示例:
short s1 = -32768; short s2 = 32767;2.3 int
int类型属于整型,最小值为-2,147,483,648,最大值为2,147,483,647,默认值为0,内存占用为4字节。代码示例:
int i1 = -2,147,483,648; int i2 = 2,147,483,647;2.4 long
long类型属于整型,最小值为-9,223,372,036,854,775,808,最大值为-9,223,372,036,854,775,807,默认值为0,内存占用为8字节。代码示例:
long l1 = -9,223,372,036,854,775,808; long l2 = 9,223,372,036,854,775,807;2.5 float
float类型属于单精度浮点型,小数点有效位数为7位,最小值为1.4E-45,最大值为3.4028235E 38,默认值为0.0f,内存占用为4字节。示例代码:
float f = 1.1f;2.6 double
double类型属于双精度浮点型,小数点的有效位数为16位,最小值为4.9E-324,最大值为1.7976931348623157E 308,默认值为0.0,内存占用为8字节。
double d = 1.1;2.7 char
char类型可以表示一个16位的Unicode字符,最大值为'\uFFFF'(十进制65535),最小值为'\u0000'(十进制0),内存占用为2字节。代码示例:
char c = 'A';
Tips:编码类型不同,一个字符所在的内存空间也就不同。
boolean类型的值分别为true、false,通常用于条件判断。代码示例:
boolean flag = true;3.基本数据类型转换3.1 为什么需要类型转换
类型转换?为什么Java基本数据类型之间会涉及到类型转换呢?
试想一下在现实世界中,如果将一个苹果和一个梨拿来比较,由于苹果和梨是两个不同的类型,自然是无法进行比较的。同理,Java是强类型语言,所以要求在执行赋值运算和算术运算的时候,参与运算的数据类型必须保持一致。
3.2 哪些基本数据类型可以相互转换除了boolean类型,其余的数据类型在内存中存储的都是数值,因此,除了Boolean类型,其余的数据类型之间都可以相互转换。
3.3 类型转换方式取值范围小的数据类型向取值范围大的数据类型转换时,可以自动转换,也叫隐式类型转换,有种大鱼吃小鱼的感觉。示例代码:
byte b =127; short s = b; int i = s; long l = i; float f = l; double d = f;
如果是进行算数运算,也会进行类型自定转换:
1、如果其中一个数是double类型,其余的数也会转换为double类型。
2、如果其中一个数是float类型,其余的数也会转换为float类型。
3、如果其中一个数是long类型,其余的数也会转换为long类型。
我们再来看看这几种基本类型之间的隐式转换关系,实线表示无精度丢失,虚线表示可能会出现精度丢失。比如1234567890是一个10位的int类型的整数,它包含的位数比float类型所能够表达的位数多,在进行转换时就会出现精度丢失。
取值范围大的数据类型向取值范围小的数据类型转换时,无法进行自动转换,需要我们为其指定显式的类型转换。进行强制类型转换容易造成数据异常,就像小鱼吃大鱼一样,如果硬把大鱼塞给小鱼吃,那必然是对小鱼的巨大破坏。代码示例:
long l = 9223372036854775807L; int i = (int) l;// i的值为-1。
Tips:整型之间的隐式转换不会出现精度的丢失,整型和浮点型之间的类型转换可能会出现精度丢失。