java 相关知识

# 常用 API

# String

1
2
3
4
5
6
7
8
9
10
11
12
13

String s1 = "test1";
s1.charAt (1);
s1.toCharArray ();
String s2 = "test2";
s1.equals (s2);
s1.equalsIgnoreCase (s2);
s1.substring (0,2);
s1.substring (1);
s1.replace ("te", "et");
s1.contains ("et");
s1.startsWith ("et");
s1.split (" ");

# ArrayList

1
2
3
4
5
6
7
8
9
10
11
12
13
14

ArrayList list = new ArrayList ();
list.add ("1");
list.add ("a");

ArrayList<String> slist = new ArrayList ();
slist.add ("a");

list.add (1,"b");
list.get (1);
list.size ();
list.remove (1);
list.remove ("b");// 默认删除第一次出现的数据
list.set (1,"c");

# 加强阶段

# static

  1. 类代码块在类创建的时候执行一次,实例代码块在每个实例对象的构造函数前执行。
  2. 单例类:把类的构造器私有,定义一个类变量并赋值一个类对象,定义一个类方法返回前文类对象。
  3. 单例类的饿汉式和懒汉式创建方法。

# 继承

1.private (类中),缺省(相同包子类),protected(不同包子类),public(无限制)。
2. 使用 @override 注解重写方法。
3. 子类构造器有一个默认的 super () 调用父类构造器。
4. 同一个类中的构造函数可以互相调用。

# 多态

  1. 对象多态(父类形参可以接受一切子类对象),行为多态(编译看左边,运行看右边)。
  2. 变量不在多态范围内。
  3. 父类可以强转为子类(instanceof)

# final

1.final 修饰的基本类型变量只能被赋值一次;修饰的引用类型变量的地址不能改变,内容可以改变;final 修饰类,类不能被继承;final 修饰方法,方法不能被重写。
2. 常量定义:public static final

# 抽象类

  1. 抽象类不一定有抽象方法,但是有抽象方法的类一定是抽象类。
  2. 抽象类无法实例化,只能作为父类给子类继承。

# 接口

  1. 接口中的成员变量默认为常量,成员方法默认为抽象方法。
  2. 一个类可以实现多个接口,弥补了类单继承的不足。
    3.jdk 8 开始,接口中有三种新的方法,分别是默认方法(default)、私有方法(private)和静态方法(static)。
  3. 一个接口可以继承多个接口。
更新于