继承

1.多态与动态绑定

1.多态是指同一个方法根据上下文使用不同的定义的能力
2.动态绑定是一种机制,通过这种机制,对一个已经被重写的方法的调用将会发生在运行 时,而不是在编译时解析

1.在 Java 中,对象是多态的,定义一个 Animal 对象,它 可以存放 Animal 对象,也可以 存放 Animal 的子类 Tiger、Fish 的对象。
存放在 Animal 数组中的 Tiger 对象和 Fish 对象在执行 breath 方法时会自动地调用原来对 象的方法而不是 Animal 的 breath 方法,这就是动态 定。
2.当 需要 问这些方法时需要用到类型 换       

2.final关键字

1.编写程序时可能需要 类定义为不能继承的,即最 类,或者是有的方法不 被子类 继承,这时候就需要使用 final 关键字来声明

1.//类声明为final
final class  类名  extends 父类  { 
//  类体
}
2.//方法声明为final
  修饰符  final  返回值类型     方法 (){ 
//方法 体
}

3.抽象类

1.抽象类是指在类中定义方法,但是并不去实现它,而在它的子类中去具体的实现。定义的抽象方法不过是一个方法占位符。继承抽象类的子类必须实现 类的抽象方法, 除非子类也被定义成一个抽象类。
2.在抽象类中的方法不一定是抽象方法,但是含有抽象方法的类一定是抽象类
3.抽象类和普通类不同,抽象类不可以实例化,但是可以创建抽象类的对象变量,只是这个变量只能用来指向它的非抽象子类对象(动态绑定)

修饰符  abstract  返回值类型     方法 ();

4.Object对象

object类可以存放任何对象

public class Test {
public static void main(String[ ] args) {
}
// 建一个存  Object   的 
  Object [ ]object=new Object[3]; 
//多态
Animal animal1 = new Fish();
Animal animal2 = new Tiger();    
object[0]=animal1; 
object[1]=animal2;
//动态绑定
object[2]=new String("String"); 
//强制转换
((Fish) object[0]).swim();
}

你可能感兴趣的:(继承)