zoukankan      html  css  js  c++  java
  • 函数式继承示例

    <html>
    <head>
    <title></title>
    <script language="javascript" type="text/javascript">
    function print(msg){
      document.write(msg);      
    }
    
    function println(msg){
        print(msg + "<br/>");
    }
    //抽象类形状类
    function Shape(edges){
        var _edges = edges;
        
        var that = {
            getArea : function(){
                return -1;
            },
            getEdges : function(){
                return _edges;
            }
        };
        
        return that;
    }
    //三角形类
    function Triangle(bottom, height)
    {
        var that = Shape(3);
        
        var _bottom = bottom;
        var _height = height;
        //重写父类方法
        that.getArea = function(){
            return 0.5 * _bottom * _height;
        };
        
        return that;
    }
    //四边形类
    function Rectangle(bottom, height)
    {
        var that = Shape(4);
        
        var _bottom = bottom;
        var _height = height;
        //重写父类方法
        that.getArea = function(){
            return _bottom * _height;
        };
        
        return that;
    }
    </script>
    </head>
    
    <body>
    <script language="javascript" type="text/javascript">
    var triangle = Triangle(4, 5);
    println(triangle.getEdges());
    println(triangle.getArea());
    
    println("---------------------");
    
    var rectangle = Rectangle(4, 5);
    println(rectangle.getEdges());
    println(rectangle.getArea());
    </script>
    </body>
    </html>
  • 相关阅读:
    uva 1374 快速幂计算
    uva 1343 非原创
    uva 11212
    uva 10603
    路径寻找问题……!
    bzoj 1008: [HNOI2008]越狱
    bzoj 1010: [HNOI2008]玩具装箱toy
    dp斜率优化小计
    bzoj 1002[FJOI2007]轮状病毒
    hihocoder #1114
  • 原文地址:https://www.cnblogs.com/zfc2201/p/2758364.html
Copyright © 2011-2022 走看看