2018年8月1日笔记

复习:

    1、Java跨平台:基于JVM。针对每一个操作系统都有不同的JVM与之对应,jvm在这个过程中屏蔽了操作系统之间的差异性。

    2、Java技术结构:JAVASE、JAVAEE、JAVAME

    3、JDK、JRE、JVM:JRE包含了JVM+核心类库(Java程序运行所需要的基本的支持),为程序运行提供环境。JDK包含了             JRE+开发工具。

    4、入门程序:Java程序一定写到JAVA文件(.java);程序运行需要入口---主函数;类编译完成之后会产生一个class文件。

    5、javac -d 包的存放位置 要编译的Java文件

         java 包名.类名

         java.cn.tedu.de.Demo

    6、环境变量:JAVA_HOME=JDK安装路径,Path=%JAVA_HOME%\bin

    7、关键字:有特殊含义的单词 ---53个关键字 ---2个保留字 const/goto ----所有的关键字都小写
    8、标识符:程序自定义的名称。由字母、数字、下划线、$组成,支持中文命名。不能以数字开头,不能使用关键字,区分大            小写,见名知意。
 

驼峰命名法

   类名/接口名:如果由多个单词组成,那么第一个单词的首字母大写,其余单词首字母大写:HelloWorld
    变量名/方法名:如果由多个单词组成,那么第一个单词的首字母小写,其余单词首字母大写:helloWorld
    包名:如果由多个单词组成,每个单词用.隔开,所有字母都小写cn.tedu.de

    常量名:如果有多个单词组成,那么每个单词由_隔开,所有字母都大写HELLO_WORLD

注释

    用于解释说明的文字

    //解释说明   单行注释

    /*

     * 多行注释

     */

    /**注释文字*/ 文档注释 --- 里面的注释内容可以利用javadoc命令提取出来形成文档(就是程序的说明书)

字面量

    在计算机中不可改变的量

    整数常量:所有的整数

    小数常量:所有的小数

    字符常量:将一个字母、数字或者是符号用  ''  标识起来 'a'  '+'  '5'  '  '

    字符串常量:将一个或多个字符用  "" 标识起来  "abc"   "+"   ""

    布尔常量:true false ---- 用于表示逻辑值

    空常量:null

进制

   计数方式

    二进制:0-1 , 满2进1  1+1=10

                在程序中以0b/0B开头标记一个二进制数字 0b1001

    八进制:0-7, 满8进1   7+1=10 要求以0开头表示一个八进制 045 052 032

    十进制:0-9, 满10进1  9+1=10

    十六进制:0-9,a-f ,满16进1  以0x开头表示一个十六进制 0x9a6b

    

进制的转换

    十进制转换为二进制:将一个十进制数不断地处以2,最后将余数倒序排列

    二进制转换为十进制:从最低位开始,乘以2的当前位次次幂(从0开始),再求和

    

    十进制转换为其他进制:十进制数向哪个进制转化就除以哪个数再将余数倒排。

    其他进制转换为十进制:从这个进制的数从最低位开始,然后按位乘以进制的位次次幂(从0开始)再求和

    

    二进制转化为八进制:从二进制数最低位开始每截取3位形成一个八进制数,前面不足补0,再顺序排列即可

    八进制转化为二进制:从八进制最低位开始每一位变为三个二进制数,前面不足补0,再顺序排列即可

    十六进制和二进制之间的转换类比二进制和八进制相互转换

    扩展:十进制小数转二进制

    绝大部分小数转二进制都是无限的(小数部分是1/2^n,则是不循环的) ----所以计算机在计算小数时总是会产生舍入误差

    

变量

   1、数据类型 变量名=值;

    2、数据类型 变量名;

         变量名=值;

   在程序中用于存储数据的容器。

    变量不能重名

    变量应先定义再调用

    变量必须先给值再使用

    变量在那儿定义就在那儿使用

    扩展:计算机存储单位

    每个二进制数字称之为1位 ---bit(简写为b)

    字节 byte(简写为B) 1B=8b

    千字节 -kilobyte (简写为KB) 1KB=210 B=1024B

    兆字节 -MB->GB->TB->PB->EB

    Mb兆位 

    8Mb=1MB

    在通信领域是按照千进制计算

基本数据类型

   数值型

        整数型

            byte - 字节型 -1个字节-8位二进制  (-27~27-1)(-128~127)

            short- 短整型 - 2个字节       -2^15~2^15-1     -32768~32767

            int - 整型 - 4个字节 -  -2^31~2^31-1 (整数默认为int类型)  当表示一个较大的整数时,可以使用  _  进行分位(JDK1.7及以上)

            long - 8个字节 -   -2^63~2^63-1 ->-10^18~10^18  需要以L/l 结尾  

        浮点型

            float - 单精度 - 4个字节    -> -10^38  ~10^38    - 需要以f/F作为结尾

            double - 双精度 - 8个字节 -> -10^308~10^308  -  java中小数默认为double类型   小数结尾可加D/d作为标记

    字符型

            char - 2个字节 ->0~65535 使用UTF-16编码

转义字符

    \t -制表符 table

    \r -回车 return

    \n-换行 next                                                                                                                                                                                                                                            

    \\ -反斜杠    \' -单引号   \" --双引号 

           扩展:将字符换为数字的过程称为编码 ---  编码表

            ISO-8859-1 西欧码表 - 1个字节表示1个字符

            gb2312 - 国标码 - gbk - 2个字节表示1个字符 -收录了常见的简体汉字以及一部分常见的繁体汉字

            Unicode编码体系 - 收录了世界上常见语言的基本字符

                     -规定了一系列的编码规则 utf-8 ->3个字节表示一个字符   utf-16 -> 2个字节表示一个字符

            注意:规定无论哪张码表都必须兼容西欧码表

    布尔型 - boolean  - -true/false 用于表示逻辑值

数据类型的转换

    自动类型转换/隐式转换

         byte b=125;

            int i=b;

            规律一:小的类型自动转换为大的类型

            int i=300

            double d=i

            float f=-25  //-25是整数

            规律二:整数类型可以自动转换为浮点型,可能会产生舍入误差

            char a='s'

            int i=a

            规律三:字符可以自动提升为整数

    强制类型转换/显示转换

            int i=35

            byte b=(byte) i

            10000111 补码

            10000110 反码

            11111001 原码

            64+32+16+8+1=121 -> -121

           规律一:当把大的类型转换为小的类型时,因为补码换算的问题,所以可能会产生一些想不到的数据。

           规律二:小数在转化为整数时会舍弃小数位

            扩展:数据的原反补三码

            如果最高位是1,则表示一个负数

            计算机中存储的是数据的补码,计算也是在补码的基础上进行

            如果是正数,那么原反补三码相同

            如果是负数,那么反码实在原码的基础上,最高位不变,其余位取反;补码是在反码的基础上+1

            直接计算出来的二进制数字是数据的原码

             -18

            1001 0010 原码

            1110 1101 反码

            1110 1110 补码

             注意:用-0表示当前类型的最小值

运算符

         算术运算符

                + - * / % ++ --

                1、byte、short、char在运算时会自动提升为int

                2、整型在运算时保持类型不变

                3、小类型和大类型运算结果一定是大类型

                4、任意整数/0  -ArithmeticException -算术异常

                     任意非0数字/0.0  任意非0小数/0 -  infinity -  无穷大。

                     0/0.0  0.0/0.0  0.0/0 -  NaN  -Not a Number - 非数字

            赋值运算符

            关系运算符

            逻辑运算符

            位运算符

            三元运算符

  

           未完待续。。。。。。

猜你喜欢

转载自blog.csdn.net/DGHxj_/article/details/81334835