Java是一门面向对象的高级语言,可将万事万物看做对象,拟用对象的角度去解决现实世界中存在的问题。它仅仅只是一种语言,其背后依赖的思想为算法加抽象数据类型。算法是人类解决问题方法在程序中的体现,现有思想体系,而后有算法实现。抽象数据类型表示编程者对现实问题分析的种种角度,是对象的模型。为此给抽象数据类型添加了泛型属性,当给它传递实际的item参数,及问题体系中的具体数据,就可以解决实际问题。抽象数据类型加上算法就是人类设计解决某一类问题的解决方案,当抽象数据类型创造了实例化对象,就能调用算法属性工具去解决concrete问题。