笔记—讲面向对象

2011年8月1日11:21:01 听方老师讲面向对象

overload :同一种方法不同的参数类型,返回值,作用于不同的。

override :当子类中的方法不能满足要求时,在子类中,重写父类的方法

 

final class:不能被继承,可以被实例化

final Method:防止被重写,

final Variety:最终变量,常量

 

abstrct class:必须被继承,不允许被实例化。

继承了抽象类,但是没有实现所有的方法的类,也必须被声明为抽象类abstract class

abstract Method:没有方法体。

 

sealed class:abstract class正好相反,也就是说不可以被继承。

 

virtual Keyword:

virtual关键字用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。

子类看不到父类的方法

 

interface:接口是契约和行为模板。

在日常生活中,单继承是个例,多继承是普遍现象。

多继承容易使系统混乱。

接口用来模拟多继承,所以说具备了抽象类的一些特征。

一个类只能继承一个类,但可以实现多个方法。

 

接口中的方法都是抽象的,所以abstract关键字可以不用写。

有抽象方法的类一定是抽象类。

 

 

抽象类里的方法一定是public abstract方法。

  

Abstract class

Interface

实例化

不能

不能

一种继承关系,一个类只能使用一次继承关系。可以通过继承多个接口实现多重继承

一个类可以实现多个interface

数据成员

可有自己的

静态的不能被修改即必须是static final,一般不在此定义

方法

可以私有的,非abstract方法,必须实现

不可有私有的,默认是public,abstract 类型

变量

可有私有的,默认是friendly 型,其值可以在子类中重新定义,也可以重新赋值

不可有私有的,默认是public static final 型,且必须给其初值,实现类中不能重新定义,不能改变其值。

设计理念

表示的是"is-a"关系

表示的是"like-a"关系

实现

需要继承,要用extends

要用implements

原文地址:https://www.cnblogs.com/fanyong/p/2158962.html