java基础01

一。java的发展简史

1995年Java语言面世。

1998年发布JDK 1.2,随之将Java 分为J2SE、J2EE和J2ME

2002年发布JDK 1.4。

  新增正则表达式、异常链、NIO、日志类、XML解析器和XSLT转换器等。

2004年发布JDK 1.5。

  引入大量新特性:自动装箱拆箱、泛型、动态Annotation、枚举、可变长参数、foreach,提供了concurrent并发包等。

2006年12月,Sun发布了JDK 1.6。

  启用JavaSE、JavaEE、JavaME的命名方式。这个版本对java虚拟机做了大量改进,包括锁与同步、垃圾收集、类加载等方面的算法。

2011年7月,Oracle发布了Java 7。

2014年3月,Oracle发布了Java 8。

2017年9月,Oracle发布了java 9。

 

二。java的机制

1. JVM机制

  保证了java程序的跨平台特性

2. 垃圾回收机制

  保证了java程序更安全和高效

三。java环境的搭建

  1.安装jdk,这个很容易get到,就不再赘述

  2.配置环境变量

    PATH:jdk安装路径/bin。这是为了让系统可以找到编译和运行java程序的执行指令。因为在bin目录下包含了大部分我们需要用到的命令,如javac java javadoc

         CLASSPATH:指定字节码文件的搜索路径。JVM就是从CLASSPATH指定的路径下去搜索所要执行的类文件。jdk1.4及以前的版本必须配置这个环境变量。从jdk1.5开                                       始,如果系统不配置这个环境变量,会默认到当前目录及java的系统类路径。

四。java程序的最小单位是类

  [修饰符] class [类名] { }  类名只要是合法的标识符即可,但实际上我们应该规范为类名是一个或多个有意义的单词组成,而且每个单词的首字母要大写。

五。运行程序的两个步骤

  首先java源文件的命名是有规则的:(1). 必须是以.java为后缀名。(2)如果源文件中定义了public类,那么文件名必须与此public类名相同。(3)如果没有public类,则        文件名随意。

  1. 使用javac命令将 *.java源文件编译成 *.class字节码文件。命令如下

    javac  -d  [目录]  java源文件  

    目录指定生成的字节码文件存放的位置

    注意:生成的字节码文件名称总是类名.class。若源文件中定义了N个类,则将生成N个.class文件

  2. 使用java命令运行

    java  -cp  [目录]  java类名

    目录指定JVM到哪里去搜索所要执行的java类。

    注意:如果没有cp选项,则根据CLASSPATH指定的路径去搜索。如果连CLASSPATH也没有设置,那么在jdk1.5及以后的版本都会在当前目录下搜索

六。java中的标识符

  自定义的,由大小写字母(包括中文字符、日文字符、韩文)、数字、_、$组成。数字不可以打头,不能使用关键字和保留字,严格区分大小写。

  java中的关键字(48个)和保留字(goto、const)全是小写的。true false null

七。注释

  对程序本质没有任何影响,主要帮助开发者记录辅助信息。

  1. 单行注释://

       2. 多行注释:/*.....*/

  3. 文档注释:/**.......*/

    文档注释只有放在类、方法、Filed、内部类之前才有效。

    可以利用javadoc命令来提取文档注释,并由此生成api文档:

      javadoc -d [目录]  java源文件   

      目录指定文档生成的位置

八。分隔符

  常见的分隔符有 英文分号(;),花括号({}),英文方括号([]),英文圆括号(()),空格,圆点(.)

九。变量

  变量是用来存取数据的。通过它可以访问计算机内存里的数据。通俗一点可以理解成一个容器。

十。数据类型

  java语言是强类型的。

    1. 所有的变量,必须先声明类型,再使用。

    2. 什么样的类型存放什么样的数据。

  java语言的数据类型分为两种:

    1. 基本数据类型(7个数值型 + 1个布尔型   7个数值型包括4个整型 2个浮点 1个char,char可当做正整数)

      整数类型:byte(1 byte(8 bit)  -27~27-1)

             short(2 byte -32768~32767)

             int(4 byte  -231~231-1)2147483648

             long (8 byte)

      关于整数的存储:

        1.最高位是符号位;0代表正数,1代表负数

        2.所有的数在计算机中以补码的形式保存。

          原码:将一个其他进制的数直接换算成的二进制数

          反码:原码符号位不变,其余各位取反

          补码:负数的补码=反码+1,正数的补码=原码

        3.整型数表现形式:

          二进制表示:(0b)(jdk7开始)

          八进制表示:(0)

          十进制表示:(默认的)

          16进制表示:(0x)

        4.默认是int,如果想要long型,则可以在直面量后面跟一个L/l

      浮点类型(支持小数):float double

        1.表现形式:

          十进制: 5.232   .32(没有整数部分,0可以省略)

          科学计数法: .23e4   

        2.浮点默认是double型,如果想要float型,则可以在直面量后面跟一个F/f

        3.浮点有三个特殊值

          正无穷大:用正浮点数除以0,得到正无穷大 所有的正无穷都相等  Double.POSITIVE_INFINITY  

          负无穷大:用负浮点数除以0,得到负无穷大 所有的负无穷都相等 Double.NEGATIVE_INFINITY

          非数:用0.0除以0得到非数,非数与自己不相等  Double.NaN

      字符类型:char(2字节,表数范围是0~65535)

        每一个字符型变量只能存一个字符,可以是英文,也可以是中文,字符型的值用单引号引起来。

        字符型的值表现形式:

          1. 直面量,如: 'a','我'

          2.转义字符,如: '\n','\r'

          3.Unicode的方式,如:'\u0041'

      布尔类型:boolean(true / false)

      

    2. 引用数据类型

 十一。数据类型的转换

  1.自动类型转换

    表数范围小的可以转换为表数范围大的。将一个整数值直接赋给变量,Java中默认的整数类型时int。如果这个整数的范围在byte、short表数范围内,系统自动会把它当做byte、short使用。

    所有的数值型都可以转换为 double型;

    除了double外,所有的数值型都可以转换为float型;

    所有的整型都可以转换为long型。

  2.强制类型转换

    当把表数范围大的变量或值,转为表数范围小的时,就需要强制类型转换。

  3.表达式类型提升

    整个表达式的值与表达式中表数范围最大的类型相同。

    

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

转载于:https://www.cnblogs.com/tljava/p/7955754.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值