• Thinking in java第一章对象导论


      这一章,做笔记感觉不是很好做。每个人又每个人对面向对象的理解。这里说一下书里的关键字,穿插一下自己的思想

      面向对象的编程语言里面很流行的一句话,一切都是对象。面向对象的核心就是抽象,抽象的能力有大有小,是决定程序员高度的一个方面

      程序员的爱情里面有句话。我能抽象出整个世界 ,唯独抽象不出你。

      最初的 OOP 语言被人描述是这个样子的

      一切都是对象。是啊,在自然界,什么都是物品,是动物植物,还是菌类生物。

      对象之间通过消息告知彼此应该做什么,其实就是方法的调用。

      类其实就是类型的意思,任何对象都属于一种数据类型,这个类型是程序员自己创造的等同于程序内置的数据类型一样,比如int,String等等。差别只是怎么定义你说了算。

      属于同种类型的两个对象必然能够结构相同的信息,就是有相同的方法供程序员调用。

      面向对象的一切基础就是为了复用。

      在谈到继承的时候作者指出,过多的继承会导致抽象的混乱,建议使用包含,对象A包含对象B,对象B为对象A 的实例对象,一个对象可以拥有任意个实例对象。

      JAVA是单继承的,所有对象都继承自Object对象,继承也是为了更好的复用。

      JAVA是单继承的,这样有一定的缺陷,为了弥补这样的缺陷,JAVA提供了接口 这一概念,接口为类提供了扩展。

      接口提供对象可以进行的行为但是没有给出实现,让对象自己实现,使得程序变得更加灵活。

      任何实现某一接口的对象必须实现此接口定义的所诱发方法。

      UML个人觉得是面向对象理解的强有力的工具,很多初学者看到UML图觉得画那些图没有意义

      但是其实作用是很大的,有助于帮助程序员更好的抽象,图让人更清楚对象之间的关系,清楚关系让人更容易抽象。

      第一章的内容比较抽象就写到这里,希望大家都能再脑袋里面不断的抽象OOP 这个概念。

      

      

      

      

  • 相关阅读:
    GO学习之 为什么选择GO
    Flask学习之 Jinja2模板引擎
    排序算法之归并排序的python实现
    排序算法之快速排序的python实现
    排序算法之希尔排序的python实现
    排序算法之插入排序的python实现
    排序算法之选择排序的python实现
    Android 中正则表达式工具类
    java之从字符串比较到==和equals方法区别
    Android Studio酷炫插件(一)——自动化快速实现Parcelable接口序列化
  • 原文地址:https://www.cnblogs.com/wzforgame/p/3013316.html
Copyright © 2020-2023  润新知