当前位置: 移动技术网 > IT编程>开发语言>Java > JAVA概述总结及数据类型易错点(溢出等问题)

JAVA概述总结及数据类型易错点(溢出等问题)

2020年07月17日  | 移动技术网IT编程  | 我要评论
1、Java概述java的发明者James Gosling。java由SUN公司发明,由于破产被Oracle收购。1995年,Java诞生 1996年 jdk1.0版本发布J2SE J2EE J2ME2004年 jdk1.5 JAVASE5.0JAVAEEJAVAME2009年收购Oracle(甲骨文)jdk14LTS---------Jdk112、分类JAVASE: JAVA Standard Edition 标准版JAVAEE:

1、Java概述

java的发明者James Gosling。java由SUN公司发明,由于破产被Oracle收购。
1995年,Java诞生 1996年 jdk1.0版本发布

J2SE J2EE J2ME

  • 2004年 jdk1.5 JAVASE5.0

  • JAVAEE

  • JAVAME

2009年Oracle(甲骨文)收购

jdk14

LTS(长期维护版本)---------Jdk11

2、Java版本结构:

  • JAVASE: JAVA Standard Edition 标准版

  • JAVAEE: JAVA Enterprise Edition 企业版
    不能离开JavaSE,因为javaSE是基础

  • JAVAME: java Micro Edition 微缩版

3、Jdk

 Jdk1.0------jdk14
 由于性能问题,或api变等原因,jdk版本总是升级

4、java命令:

  javac ——javac xx.java  
  java——java xx

5、环境:

 jdk下载,安装,配置(2种方法,最好是JAVA_HOME,因为Maven要用)
 JAVA_HOME=安装路径
 path:%JAVA_HOME%\bin

6、编译器:

记事本,eclipse,idea

7、java程序

应用程序和小应用程序(小应用程序无main方法)

java源文件(.java)——>编译 javac(.class)——>执行java(即运行)

.class跨平台,跑在java虚拟机上

8、java源文件

  • 入口方法(也就是程序从哪里开始执行):main

  • main参数:String[]

  • public的类名必须为文件名(因为Java是被解释执行的。它在运行时并不是将所有的class文件全都放到内存中。而是在遇到import的时候才去相应的文件目录找相应的class文件。
    对于一个public类,它是可以被项目中任何一个类所引用的,只需在使用它前import一下它所对应的class文件即可。将类名与文件名一一对应就可以方便虚拟机 在相应的路径(包名)中找到相应的类的信息。如果不这么做的话,就很难去找,而且开销也会很大。

  • 1个源文件可以包含多个类,但其中最多只能有一个用public修饰

    的类

9、jdk、 jre、 jvm

  • Jdk是Java Development Kit的缩写,即java开发工具包,开发者用
    包括jre和java工具(例如:javac 编译器,Java 解释器等)
  • Jre(Java运行时环境):全称是Java Runtime Environment,用于运行java程序,包括java类库和jvm
    只要有class文件加上jre就能运行
  • jvm:java virtual machine
    用java代码写的,模拟计算机的
    只要有jvm,有class文件,在任何平台可运行
    执行class文件的
    java跨平台(因为class文件),但jvm不是跨平台

10、数据类型

给数据分配多大内存空间,需数据类型规范
基本数据类型:

  • 整形:byte,short,int,long
    byte 1个字节 8位 -128~127 (-2的7次方~2的7次方-1)
    short 2个字节 16位
    int 4个字节 32位
    long 8个字节 64位 后缀l/L
    byte b = 127;
	System.out.println(b);      //127
	System.out.println((byte)(b+1));       //128
	System.out.println(Byte.MAX_VALUE);    //127
    System.out.println(Byte.MIN_VALUE);    //-128
    byte b=128;     //error
	System.out.println(Short.MAX_VALUE);
	System.out.println(Short.MIN_VALUE);
	System.out.println(Long.MAX_VALUE);
	System.out.println(Long.MIN_VALUE);
	System.out.println(Integer.MAX_VALUE);
	System.out.println(Integer.MIN_VALUE);
	long l = 2100000000000;     //error
	long l = 2100000000000l;    //2100000000000
  • 浮点型:float单精度 4 后缀 F/f
    double双精度 8 后缀D/d
    float f2 =10;       //10.0
	float f = 5.67F;    // 5.67
	double d = 5.67;// Double
	System.out.println(Float.MAX_VALUE);
	System.out.println(Double.MAX_VALUE);
	double d2 = 2.0-1;    //1.0
	double d3 = 1F;       //1.0
  • 字符型:char 2个字节 0-65535
    char c1 = 'a';      //a
	char c2 = 97;       //a
	char c3 = '中';     //中
	System.out.println((int)c2);    //97
	
	char c4 = '\u0231'; 
	char c5 = '\n';
	char c7 = '\t';
	char c8 = '\\';
	String str = "c:\\java\\web";
  • 布尔:boolean:true,false
    以下代码均正确:
 boolean b=false;
 //赋值语句(只要是布尔值就对)
 if(b=true){
     System.out.println("b=true");
 }
 //比较运算符
  if(b==true){
     System.out.println("b=true");
 }

以下为错误代码(因为b2不是布尔值):

int b2=1;
if(b2=0){}

下图为易出错的数据类型例子:

除了基本数据类型的所有数据类型都是引用数据类型,比如:

  • String name=“张三”;
  • int[] nums;
  • Object(顶级)
  • User类,Student类等
    引用数据类型都需要分配内存,需要new
    注:
  1. 使用封装类提供的静态变量查看数据类型的最大值和最小值,例如:
    Integer.MAX_VALUE
    Integer.MIN_VALUE
    除了Int的封装类为Integer,其余类型封装类均首字母大写
  2. char是存字符的,字符必须用单引号 ,char类型可存汉字(Java使用Unicode字符集,char类型占两个字节,从0-65535之间可表示为图片,中英文汉字的图片都有一个对应的码,即Unicode编码中包含了中英文汉字,所以char类型可以存储汉字,但不是所有的汉字都能正常表示出来)
  3. 整形包含在浮点型中
float f=10;  // 结果输出为10.0
Byte b=127; 
 System.out.println(b+1); 
  //结果为128,因为未赋值
  1. 默认常量是int类型,如下所示报错,因为超出int范围,可加后缀l/L,如上图所示
 long l=210000000000;  //error
  1. \u为十六进制,0-9 a-f

  2. 整型和浮点型在内存中存储数据的方式不同

  3. 默认带小数点的常量是float类型

  4. 转义字符:
    \t 调格式用
    \ 表示路径(一个’'识别不了,必须转义)

本文地址:https://blog.csdn.net/sinat_40482939/article/details/107372608

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网