zoukankan      html  css  js  c++  java
  • 读书笔记-简单叙述对象关系


                                             本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处!


            在Java中,最明显的特征就是面向对象,讲到对象就不得不讲到关系,跟人类社会的人际关系一样复杂。

           我们先讲讲其中的两个概念,组合与聚合。以下默认均是两个对象之间的关系,以小喻大。

           组合:是has-a的关系,<Thinking in Java>如是定义,即一个对象中有另一个

           聚合:是contain-a的关系,如下是一个对象包含另一个的意思

           不同点:从字面上可以看出,前者讲述的概念属于强关系,不可分割,如人-心脏的关系,一个不存在另外一个也无意义,则被回收;后者讲述的概念属于弱关系,可分割,如电脑-音箱,一个不存在另外一个可以单独存在。


          接下来再讲两个概念,重载与覆盖,其实英文要更好记一些,overload与override,从字面上也可以看出些不同,那这两个概念的出现,也就是因为意义不同而存在。

          不同点:前者指将某方法名复制、添加方法,此时不论修改变量类型、变量数目、变量顺序,但改变返回值不算,在软件需要新功能时比较常见;后者指完全定义一个新的方法,至于为什么要这样做?处理不同的逻辑!如飞机启动和跑车启动是不一样的。


    继承:获得父类的行为和功能,同时可以声明自己的行为。

    接口:最初的行为定义,具体实现看情况。如生物下无论树、熊猫、鹰。

    PS:单根继承,垃圾回收要容易的多,因为没有组合关系,各种实现类比较单一,不用即回收。


    容器与泛型:用来放置多种相同类型的数据


    堆:用来存放数据实体

    栈:用来放临时数据,如数据引用


    异常处理:程序允许正常的异常出现,就像人也会脑力耗尽一样,我们在使用有限的资源创造最大的价值。


    并发:同一时刻执行多个任务,此时注意资源加锁。如多个球员踢足球一样,他们都在打配合踢球,但只有一个资源-球,不能平白拿出一个新球来射门。


    Java/Internet:通过Internet,Java被应用,网上冲浪,处理模式:客户请求-逻辑处理-服务器接收-逻辑处理-响应请求,其中前者一般做成中间件,虚拟多个客户端来处理,现在最流行的是多个服务器处理请求,即云计算。



  • 相关阅读:
    storcli64 查看raid
    初学者路径规划 | 人生苦短我用Python
    Vue.js组件的重要选项
    三个Bootstrap免费字体和图标库
    前端实时消息提示的效果-websocket长轮询
    前端实时消息提示的效果-websocket长轮询
    带分页的标签
    带分页的标签
    VMware-workstation安装
    VMware-workstation安装
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6147376.html
Copyright © 2011-2022 走看看