查漏补缺

1. 类的组成

1.1 属性 权限 [特征] 类型 名字 [= 值]

1.2 方法 权限 [特征] 返回值 名字 (参数) [异常] [{方法体}]

1.3 构造方法

构造方法也是方法 构造方法返回值没有(是因为返回值是一个对像)
我们通过new关键字来调用构造方法
构造方法中this指向对象
this不能在一般方法里调用构造方法,但是this可以在构造方法中调用构造方法(只能写在第一行)
构造方法不能来回调用

this();

1.3.1栈溢出错误(StackOverflowError)

public void sleep(){
    this.eat();
    System.out.print("人可以吃饭");
}
public void sleep(){
    this.sleep();
    System.out.print("人可以睡觉");
}

1.4代码块(可以理解为特殊方法)

不是调用的,在每一次构造方法执行前,自动执行

{
    代码;
}

2. 数组

2.1 冒泡排序(升序)

原理

public int[] permutation(int[] array){
    for(int i=i;i<array.lenth;i++){
        for(int j = array.lenth-1;j >= 0;j--){
            if(array[j]<array[j-1]){
                int x = array[j];
                array[j] = array[j-1];
                array[j-1] = x;

            }
        }
    }
}

2.2 是否存在


3 动态参数 相当于数组

写法 : 参数类型 ...变量名
无参数 相比于 动态优先级高(个人理解)
后面不能有参数(没头)只能存在一个 &&
放在最后不能与数组重载
可以通过index 来访问
可以像数组一样遍历

4 接口

属性、方法都是公共的
默认 public static final
JDK1.8 以后 default 可以修饰具体类

Interface name{
    default void name(){
        代码;
    }
}

4 String

String.trim();
方法实际上trim掉了字符串两端Unicode编码小于等于32(\u0020)的所有字符。
trim()方法实际上的行为并不是 去掉两端的空白字符 ,而是 截取中间的非空白字符。

startsWith()方法用于检测字符串是否以指定的前缀开始。

5 Properties

包: java.util 继承 HashTable
一种类似流的东西

key1=value1
key2:value2
        //创建Properties
        Properties pro = new Properties();
        //加载文件地址
        pro.load(new FileReader("D://a.properties"));
        //通过key获得value
        String key1 = pro.getProperty("key1");
        System.out.println(key1);
        //创建Property
        pro.setProperty("key3","value3");
        //遍历Properties
        Enumeration<?> enumerations = pro.propertyNames();
        while (enumerations.hasMoreElements()) {
              Object o = enumerations.nextElement();
              String property = pro.getProperty((String) o);
              System.out.println(property);

        }

6. 自定义异常

  1. 创建一个自己规定的异常类型
  2. 继承父类
  3. 可以添加带参数的构造方法 无参数 有参数
  4. new一个自定义异常对象 通过throw关键产生异常

7. 垃圾回收器

垃圾回收器 --- 一个线程

栈内存
变量 值交换空间 方法执行临时空间
先压入栈内存的最后回收 用完即回收
堆内存
对象---GC
当对象没有任何引用指向的时候 则视为垃圾
垃圾回收器就将其回收(内存空间)
回收对象之前调用一个方法 finalize
有一个用来管理内存的类Runtime
存储区
常量

静态元素

posted @ 2020-03-16 12:47  giaogiaoze  阅读(266)  评论(0编辑  收藏  举报