JavaSE复习

查看jdk各版本方法
方法一 www.oracle.com

  1. oracle.com –> Products –> Software –> Java
  2. 下拖,找到在Oracle Java Products模块下的Java SE
  3. DownLoads Documention 从JDK Release Notes可以点击选择对应版本进行查看
  4. Reference–>Developer Guides可以查看Java概念图说明
    方法二 jcp.org
  5. 点击List of All JSRs
    前面的编号m就是 JSR m,可以查看对应的一些详细的更改变化

动态绑定
又称为运行时绑定。意思就是说,程序会在运行的时候自动选择调用哪儿个方法
例子:

  1. 子类重写父类中的方法,调用子类中的方法
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public class Father{
    public void method(){
    System.out.println("父类方法:"+this.getClass());
    }
    }
    public class Son extends Father{
    public void method(){
    System.out.println("子类方法"+this.getClass());
    }
    public static void main(String[] args){
    Father instance = new Son();
    instance.method();
    }
    }
    //结果:子类方法:class Son
  2. 子类没有重写父类中的方法,所以到父类中寻找相应的方法
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class Father{
    public void method(){
    System.out.println("父类方法:"+this.getClass());
    }
    }
    public class Son extends Father{
    public static void main(String[] args){
    Father instance = new Son();
    instance.method();
    }
    }
    //结果:父类方法:class Son
  3. 动态绑定只是针对对象的方法,对于属性无效。因为属性不能被重写
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class Father{
    public String name = "父亲属性";
    }
    public class Son extends Father{
    public String name = "孩子属性";

    public static void main(String[] args){
    Father instance = new Son();
    System.out.println(instance.name);
    }
    }
    //结果:父亲属性
`new DemoThis().hello();`调用的是当前子类里面的对应方法,或者说子类把父类中的方法继承过来了。 因为父类中的方法也好,子类也好,都已经被子类继承了。