Chinaunix首页 | 论坛 | 博客
  • 博客访问: 662071
  • 博文数量: 255
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 2811
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-09 13:29
个人简介

IT业行者,行者无疆

文章分类

全部博文(255)

文章存档

2011年(121)

2010年(134)

我的朋友

分类:

2011-01-13 16:35:19

继承,多态,重载,覆盖(温习下找工作)抽象类,接口

20081024 星期五 22:37

继承
1--
子类覆盖父类的方法(覆写),那么在调用子类中覆写的方法时,
   在内存中,子类的方法覆盖了父类的方法(方法的覆盖)。
2--
属性的覆盖时,在内存中,子类继承的属性有一个内存块,父类的属性也有
   有一个内存快,子类属性在内存中没有覆盖父类的属性(属性的覆盖)。


如果父类指向子类的空间,那么父类只能调用子类继承过去的方法,对于子类自己的方法将无法调用。
如果子类指向子类的空间,那么子类可以调用继承下来的父类的方法和自己的方法。


重载:
1--
方法名相同,参数列表不同(个数,类型,顺序)。不能根据名称判定
2--
方法的作用域和返回类型可以不同。
public void aaa();
public void aaa(int i);
private void aaa(int i,int j);
==>
正确
public void aaa()
public int aaa();
==>
错误


覆盖(重写):
1--
方法名必须相同,参数列表必须相同,返回类型必须相同
2--
方法的作用域可以不同(注意权限问题)

java重写,重构,覆盖是同一个意思。


多态
子类继承具体父类
1--子类必须覆写父类的方法,才实现多态
子类继承抽象类
(如果子类实现了抽象类的全部方法,则子类为不是抽象类,如果子类只要有一个没有实现父类的抽象方法,那么则为抽象子类)
1--
子类必须覆写父类的方法或者实现父类的抽象方法,才实现多态。
子类实现接口
1--
子类实现接口中的方法,才实现多态(100%

静态函数是不支持多态的,静态函数根据对象的声明类型调用,非静态函数则根据实际对象类型进行调用。

抽象类与接口的区别:
1--接口中所有的方法都必须是抽象的方法,这些方法留给实现接口的类来实现,而抽象类既可以有抽象的方法,也可以有实现的方法
2--
抽象类偏重于属性,接口偏重于行为
3--
抽象类实现接口,不需要显示的声明接口中的抽象方法,不需要完全实现接口中的方法。
   抽象类继承抽象类,可以不显示的写出抽象方法,但直到非抽象的子类必须实现所有的抽象方法。

抽象类中可以有静态的方法,而接口中不允许有静态的方法。

抽象类可以继承抽象类和非抽象类,可以实现接口(不需要所有方法),但不可以继承接口
   接口可以继承接口,但不可以实现接口。

JAVA抽象类的理解:
1、普通的JAVA类也可以在CLASS前加ABSTRACT声明为抽象,只不过此时的该类不再可以实例化。
2
、如果一个类里有一个以上的抽象方法,则该类必须声明为抽象类,该方法也必须声明为抽象。
3
、抽象类不能被实例化,但不代表它不可以有构造函数,抽象类可以有构造函数,备继承类扩充。

接口中的方法如果没有给作用域,则默认为public abstract(),如果给作用域的话,只能给public或者public abstract,也是public abstract相当于没有意义
抽象类中的方法如果没有给作用域,则默认作用域权限跟普通类一样,如果给作用域的话,除了private其它都可以给。

ArrayList的增长方式(异步)
1--
默认大小10个元素,下标0--9
2--
超过10个元素,则自动增长到16个元素,下标0-15
3--
以后没次超过都等于(当前大小为aa+a/2+1 的大小。
10--16--25--38.......

Vector同步效率低,安全性高,增加同倍。10-20-40-80-......


final
1--final
作用于方法,则方法可以被重载(继承可以重载,不继承也可以重载),但是方法不能被覆盖。
   final作用于变量必须初始化,在继承关系中,变量可以被覆盖,不过感觉没有意义。
2-- finally
在异常处理时提供 finally 块来执行任何清除操作。


HashMap,HashTable,HashSet.
1--HashMap
除了不同步和允许使用null之外,HashMap类和Hashtable大致相同。
   HashMap不保证映射的顺序,特别是它不保证该顺序恒久不变。

 

 

阅读(1412) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~