很久没有碰过java了,为了项目需要以及以后找工作,还是有必要将think in java通读一遍。欢迎大家一起讨论学习
1.1抽象过程
面向对象语言的5个特性:
1.万物皆对象
任何事物都可以抽象为对象,对象包括属性和方法。
2.程序是对象的集合,它们通过发送消息告诉彼此要做的。
将消息想象为特定对象的方法调用
3.每个对象都包含其他对象组成的存储。
4.每个对象都是每个类的实例instance。
每个类与其他类最重要的区别在于“可以发送什么样的消息给它”。
5.每一特定类型的所有对象都可以接受相同的消息。
每个对象都拥有:状态(内部数据),行为(方法),标识(内存地址)
1.2 每个对象都有一个抽象接口。。。废话
1.3每个对象都提供服务
当开发或理解一个程序时,最好的方法是将对象理解为“服务提供者”
在良好的面向对象设计中,每个对象提供一个良好的服务,不去做更多的事。(高内聚)
1.4被隐藏的具体实现
程序员按照角色分为类创建者(那些创建新数据类型的类型-对象的程序员)和客户端程序员(在其应用程序中使用数据类型的类消费者)