会调用子类中的这个方法;(动态连接、动态调用)
三、变量不能被重写(覆盖),”重写“的概念只针对方法。
5、重写
英文名是 overriding,是指在继承情况下,子类中定义了与其基类中方法具
有相同型构的新方法,就叫做子类把基类的方法重写了。这是实现多态必须的步
骤。
6、重载
英文名是 overloading,是指在同一个类中定义了一个以上具有相同名称,但是型
构不同的方法。在同一个类中,是不允许定义多于一个的具有相同型构的方法的。
7、接口与抽象类
abstract class 和 interface 是 Java 语言中对于抽象类定义进行支持的两种机制。
在 abstract class 方式中, 可以有自己的数据成员,也可以有非 abstarct 的成员
方法,而在 interface 方式的实现中, 只能够有静态的不能被修改的数据成员(也
就是必须是 static final 的,不过在 interface 中一般不定义数据成员),所有的成
员方法都是 abstract 的。从某种意义上说,interface 是一种特殊形式的 abstract
class。
抽象类里面可以有非抽象方法但接口里只能有抽象方法 声明方法的存在而不去
实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行
为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建 abstract
类的实例。接口(interface)是抽象类的变体。
在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。
接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义 static final
成员变量,instanceof 运算符可以用来决定某对象的类是否实现了接口。
java 抽象类的构造方法和普通类的构造方法一样,都是用来初始化类,只是不
能直接创建抽象类的实例对象而已。
在继承了抽象类的子类中通过 super(参数列表)调用抽象类中的构造方法,可
以这么理解吧 抽象类就是一个不能实例化的类
不过如果方法加了 abstract 那么就必须在子类里面重写了
二、Java 存储
JAVA 的容器---List,Map,Set
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
评论