面向对象的三大特征(个人理解)
封装:面向对象思想以功能划分各个模块,封装使各个模块只需要提供实现的接口,而隐藏其具体的实现。这样带来的好处就是模块灵活性的提高,我们可以修改各个模块的具体实现,只需要保证其公开的接口实现即可。关键字:private
继承:继承自父类的子类可以拥有父类的public 以及protected修饰的成员 关键字: extend
多态:各个子类重写父类的某个方法,然后通过该方法展现出来的差异性。 关键字: override
class Person{
public function say():void{
trace("Hello");
}
}
class A extends Person{
override public function say():void{
super.say();
trace("I'm A");
}
}
class B extends Person{
override public function say():void{
super.say();
trace("I'm B");
}
}
/**演示方法*/
public function main():void{
var arr:Array = [new A,new B];
for each(var item:Person in arr){
item.say(); //输出: hello I'm A hello I'm B 。这里两个Person对象执行同一say方法展现出来的差异性就是多态
}
}