Java基础(简单篇)

  • Java环境简单介绍

    • 使用Java语言开发------>JDK(Java开发工具包)提供内库,直接拿来使用
    • 使用时,使用Java相应语法------>JDK提供javac等命令
    • JDK提供Java运行环境------>jre
  • 环境配置

    • administor变量------>局部变量
    • 系统变量------->全局变量
    • path(默认)—>系统读取path下路径中是否存在指定命令。若有,执行命令;若无,报不是内部或外部命令,也不是课运行的程序或批处理文件(cmd打开时,会访问打开那一时刻的环境变量
      • SystemRoot—>变量
      • %SystemRoot%—>%‘取值’%
    • classpath —>类路径(找.class文件)
  • 编译器

    • 透视图—>包括多个视图
  • ###数据类型###

    • ####数据类型
      • byte–>B bit–>b
      • -八种基本数据类型
        • byte 1B Byte
        • short 2B Short
        • int 4B Integer
        • long 8B Long
        • float 4B Float
        • double 8B Double
        • char 2B Character
        • boolen 1B(1b) Boolen
      • -引用数据类型
        • 类(抽象类)String
        • 数组
        • 接口
    • ####变量
      • -变量定义
        • type variable_name; //变量声明 开辟内存空间
        • variable_name = value; //变量赋值
        • type variable_name =value;//变量声明的同时为其赋值,变量必须有初始值,才可以被使用
      • -变量转换
        • -byte,short,char一般不互相转换
        • -byte,short,char–>int–>long–>float–>double
        • 如上反之必须强转;如果浮点型强转整型,则会出现截尾操作。有可能出现数据溢出
        • 任何基本数据类型与字符串相加,该数据类型的值会自动转换成String类型,然后再拼接
        • int转String
          • String.valueOf
        • String转int
          • Integer.parseInt
    • ####运算符
      • -算术运算符

        • +, -, *, /, %
        • %表示可以整除,常用于判断是否为某个数倍数
      • -比较运算符

        • , >=, <, <=, ==, !=

        • 一个比较运算符表达式,一般作为if,循环等条件。
      • instanceof

        • 对象 instanceof 类型
      • -逻辑运算符

        • &&, ||, ! (有短路)
        • 当多个条件组合在一起,就需要逻辑运算符
      • -位运算符

        • &, |, ^(异或), ~(取反)(无短路)
      • -移位运算符

        • , >>>, <<

      • -条件运算符

        • condition?val1:val2
      • -赋值运算符

        • =
    • ###流程控制
      • if
      • switch
      • for
        • for(init_statement; condition)
      • while()
        • while(condition){}
      • do…while
        • do{}while(condition);
      • for增强
        • for(type name : 集合对象)
    • ###随机类
      • Random
        • 随机生成数值
    • 数组

      • 数组是元素类型相同的,定长的,有序的集合。
      • 数组定义形式:
        • 声明:type[] array_name;
        • 动态创建数组形式,可以先声明,再创建数组对象
          • type[] array_name = new type[name]
          • type[] array_name = new type[]{val1, val2, val3,…}
        • 静态创建数组形式,必须声明的同时赋值
          • type[] array_name = {val, val2,…}
      • 数组特点:
      • 一、
        • type既可以是基本数据类型,也可以是引用数据类型。
        • type:表示数组元素类型
        • type[]:表示数组类型
      • 二、 每个数组都有一个length属性,可以通过array_name.length表示
      • 三、数组可以使用索引存取,索引范围从0开始到array_name-1,如果超过,抛出异常
      • 四、数组一旦定义,长度不可改变。如需改变,需要重新创建数组。
      • 五、数组是引用数据类型,如果不为其元素初始化,则每个元素按其类型的默认值填充
        • 元素类型为
          • byte, short, int, long----->0
          • float, double----->0.0
          • char----->’ ‘或者’\u0000’
          • string----->null
          • boolean----->false
      • Arrays工具类:
        • 该类方法都是static方法,是操作数组的工具类。
          • 输出:Arrays.toString(array_name)
          • 排序:Arrays.sort(array_name)
          • 二分法查找(折半查找) Arrays.binarySearch(array_name, key)
          • 数组扩展
            Arrays.copyOf(array_name, array_name.length + 1)
            *连个数组合并
            • System.arraycopy(arr_name1, index1, arr_name2, index2, length)
  • 面向对象


    •   [访问修饰符] [修饰符] class 类名{
        	//类内容
        	//构造方法,属性,方法,代码块
        }
      
      • 访问修饰符:private,default, protected, public

      • 修饰符:final, abstract等

      • 类名:符合标识符的命名规范。首字母大写

      • {}:必须要有{},表示类中的元素。奖类的属性,方法,构造方法,代码块都放入{}中,体现封装的思想。

      • 属性:描述对象的特征

      • 构造方法:

        • 方法无返回值;
        • 方法名必须和类名相同;
        • 用于初始化属性;
        • new对象的时候自动调用;
        • 如果类中不显示提供构造方法,则系统会默认提供一个空的构造方法,如果显示提供构造方法了,则不再提供空的构造方法;
        • 构造方法可以重载(方法名相同,方法的参数列表不同(参数个数,类型,顺序不同;与参数名称无关))
          • this—>表示当前对象
          • 方法:实现功能,描述对象的行为
      • 类中包含:

        • 属性,方法,构造方法,代码块
      • 一、static
        • static可以修饰属性,方法,代码块,修饰内部类
        • static特点:
          • 1- static 可以修饰属性,方法课直接使用 类名.属性名 或 类名.方法名访问
          • 2- static修饰属性,表示该属性为所有对象共享
          • 3- static修饰的方法中,只能调用静态的属性和方法
          • 4- static修饰的代码块中,会再JVM加载该类的时候,自动执行,且仅执行一次
      • 二、final
        • final表示最终的,可以修饰变量,属性,方法,类
        • final特点:
          • 1- final修饰变量 常量 常量全部大写,中间以_分隔
          • 2- final修饰属性 常量 一般由public static final 常量全部大写,中间以_分隔
          • 3- final修饰方法 该方法无法被子类重写
          • 4- final修饰类 表示该类无子类。不能被继承
      • 三、重写和重载
        • 重载:在同一个类中,方法名相同
    • 面向对象的三大特性

      • 封装:private修饰属性,提供public的getter和setter方法进行访问。
      • 继承:
        • 作用:提高代码的复用。
        • 实现机制:public class Son extends Father{}
          • Son称为子类,派生类;Father称为父类,基类。
          • 父类中的特征,在子类中也有。
        • 注意点:
          • 1- 一个类只可以由一个父类,一个父类可以有多个子类。
          • 2- 所有的类,都是Object的直接子类或间接子类。
          • 3- 子类默认调用父类空构造方法
          • super表示父类对象,可以在子类中使用。
            • 1- super([实参]) 可以在子类构造方法中显式的指定调用父类哪个构造方法。如果不写,默认子类构造方法调用的是父类空的构造方法。该语句需放在子类构造方法的首行。
        • 重写:override 重载:overload
        • 1- 重写必须在继承结构中
        • 2- 重写规则:
          • 方法的返回值类型,方法名,方法的参数类型必须和父类保持一致。
          • 子类中重写的访问修饰符必须大于等于父类中被重写的访问修饰符
          • private -> default -> protected -> public
          • 子类重写方法不能抛出比父类被重写方法更多的编译时异常。
      • 多态
        • 1-在继承结构中
        • 2-子类重写父类的方法
        • 3-Father f = new Son();声明父类引用子类对象
        • 4-f.被重写的方法(),真正执行的是重写后的方法
      • Object
        • 打印输出一个对象的时候,该对象会自动调用.toString()方法,将该方法返回值打印输出。
    • 抽象类:
      • 由abstract修饰的类
      • 抽象方法:没有方法体的方法。
      • 抽象类和抽象方法的关系:
        • 抽象类不一定有抽象方法,但有抽象方法的类一定是抽象类。
      • 抽象类特点:
        • 抽象类不能实例化
        • 声明抽象类,引用抽象类的实现对象
    • 接口
      • 1- 接口使用interface关键字定义
      • 2- 接口中只能包括两类:静态类常量(public static final)和抽象方法(public abstract)
      • 3- 接口不能实例化;只能声明接口引用该接口的实现类。
      • 4- 接口和接口之间使用extends实现继承(类和类一样);类和接口之间使用关键字implements
      • 5- 如果一个类不能重写接口中的方法,则该类是抽象类
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值