zoukankan      html  css  js  c++  java
  • CLOS : Common Lisp 的面向对象支持

    1.  defclass   ( :accessor/reader/writer ;   :initarg  ;  :initform

    2. defgeneric

    3. defmethod

    --------------

    1. 多重继承时的优先级(类似Ruby中的Ancestor Chain)

    2. 面向对象的两种模型: 

        ①  obj. method (args)   ——  Java,C++

        ②  obj.send (method, args)   === send (obj , method ,args)  —— Ruby对此支持

        ③   method (obj, args) ———— 广义函数,Lisp和Haskell都是这种 。 Lisp可以把特化到多个类型

    3. 面向切面AOP支持  

         :before  :after   :around

    4. 组合机制( combination )

        ???  支持多个组合符,可以把所有主方法的结果组合起来

        call-next-method : 相当于super

    5. 支持 singleton-method (Ruby术语), 即:只为一个特定的instance定义方法。


    包机制(package)

    和 Haskell的包机制非常相似。

    可以控制只导入外部包中的某些符号、只导出本包中的某些符号;

    如何处理不同包内的命名冲突 (Haskell 用 as )

  • 相关阅读:
    mysql导出某张表的部分数据
    linux命令行实用快捷键
    mysql导出数据库某些表的数据
    二进制日志过期时间设置expire_logs_days
    进程信息
    安装mysql-workbench
    create user
    系统io统计
    mysqldump与mydumper
    系统负载监控
  • 原文地址:https://www.cnblogs.com/nanlan2017/p/9672358.html
Copyright © 2011-2022 走看看