java基础知识2020-10-06

java基础知识2020-10-06

java平台
    JVM:JAVA虚拟机(用软件模拟硬件)
    JRE:JAVA运行时环境
    JDK :JAVA开发工具包
        目录:bin
            jar.exe:打jar包
            javac.exe :编译java源程序->生成字节码程序
            Java.exe:执行java字节码程序->启动虚拟机
            Javadoc.exe:生成文档

java功能
    JavaSE client/Server
    JavaEE WebApp
    JavaME 嵌入式

跨平台原理
    跨平台:一套代码可以在不同的操作系统上运行
    通过JVM实现跨平台:翻译
    源码=编译=>字节码=虚拟机=>执行

java程序的结构
    基本单元:类
        语法:public class 类名{}
        类名命名规则
            只能由字母,数字,下划线,¥,$
            不能以数字开头,一般以大写字母开头,每个单词首字母大写
            见名知意
            公共类类名与文件名相同
    程序入口
        public static void main(Sring[] args){……}
    控制台输出
        System         java内置对象
        System.in   java标准输入流
        System.out  java标准输出流
        System.out.print("内容");    输出不换行
        System.out.println("内容");    输出换行

java变量
    数据类型
        基础类型
            字符类型
                char '?' 必须且只能有一个符号
                String "" 长度0~,受限于内存
            数值类型
                整数 
                    byte:-128~127   1个字节
                    short:-32768~32767    2个字节
                    int:4个字节    
                    long:8个字节
                 小数
                    float
                    double
                    BigDecimal
            布尔类型
                        bit:0/1
                boolean :false/true
        引用类型
    变量使用步骤
        声明
            语法:数据类型 变量名称;
            变量命名规范
                只能由字母,数字,下划线,¥,$
                不能以数字开头,一般以小写字母开头,之后每个单词首字母大写
                见名知意
        赋值
            变量名称=值;
        使用
            变量名称1=变量名称1+变量名称2
    java常量
        语法:final 数据类型 常量名称 = 值;
        规范:不能以数字开头,全部字母大写
    数据类型转换
        自动类型转换(向上)
            float a = 1;
        强制类型转换(向下)
            float a = 1.0f;
            float a = (float)(1+1.0);

运算符
    算术运算符
        +、-、*、/、%、++、--、+=、-=、*=、/=
    关系运算符
        > >= < <= == !=
    逻辑运算符
        && 二元短路与  都为true为true,否则为false
        ||二元短路或    都为false为fasle,否则为true
        !前置一元运算符
    赋值运算符
        = 从右向左执行
    三元运算符
        xxx val = boolean ? V1:V2;

分支结构
    单分支:if(条件){代码}
    双分支:if(条件){代码1}else{代码2}
    多分支
    嵌套分支

循环
    四要素
        循环变量的声明和初始化
        循环条件的构建
        循环体
        循环变量的更新
    基础循环
        while:先判断后执行
        do while 先执行后判断
        for 循环次数确定
        循环跳转语句
            continue
            break
    增加循环
        for(xxx c:arr)

数组
    一维数组
        概念:一组类型相同的连续的存储空间的表示
        使用数组四步骤
            声明     xxx[] array;
            分配空间 array = new xxx[length];
            赋值      array[lengh] = value;
            使用  System.out.print(array[length]);
        属性
            不可变
            长度int len = array.length
            下标(索引):0~array.length-1题 
        数组元素的默认初值
            String :null
            byte/short/int/long:0
            boolean:false