java基础杂烩

时间:2023-03-09 19:38:14
java基础杂烩
1. int ... arg; 可变参数
2. 数组拷贝放在JDK中的System类中,arraycopy(原数组,从原数组那一个索引开始拷贝,目标数组,在目标数组哪一个位置开始粘贴,拷贝元素的个数)方法。
3. native修饰符(本地方法),该方法底层使用了C++/C语言实现了,Java直接调用其他语言编写好的功能
4. 搜索某一个元素的索引是多少:
  线性搜索(从头搜到位/从未搜到头):indexOf/lastIndexOf 性能低
  二分搜索法/二分查找/折半查找(前提是数组元素有序)
5. binarySearch()二分搜索法,故查询前需要用sort()方法将数组排序,如果数组没有排序,则结果是不确定的
6. reverse()方法表示的是将一个输入流倒叙输出
7. Arrays是数组的工具类
8.  java中指定位置如(0,6)都为前闭后开。包括前面不包括后面。

9. this:  当前对象,谁调用this所在的方法this就是哪一个对象。

  super: 当前对象的父类。

10. 对象具有两种类型:编译类型、运行类型。

  例:Animal a = new Dog();

  编译类型:声明对象变量的类型,Animal表示把对象看出什么类型。

  运行类型:对象的真实类型,Dog,运行类型--->对象的真实类型。

  当编译类型与运行运行类型不同的时候,多态就出现了。多态就是指对象具有多种形态,对象可以存在不同的形式。

11. static静态块一般我们用来做初始化操作,加载资源,加载配置文件

12. 装箱:把基本数据类型数据转换成对应的包装类对象。

    拆箱:把包装类对象转换成对应的基本数据类型数据。

  java5之后允许自动装箱和自动拆箱功能。

  自动装箱:可以把一个基本数据类型变量直接赋给对应的包装类变量。

  自动拆箱:允许把包装类对象直接赋给对应的基本数据类型变量。

  解释Object obj = 17;

  1. 自动装箱:Integer i = 17;

  2. 引用的自动类型转换,把子类对象赋给父类变量:Object obj = i;