zoukankan      html  css  js  c++  java
  • javascript的面向对象

    <script>
    
    //定义js的user对象
    
    function User(name,age){ 
      this.name=name;
    this.age=age;
    this.getName=function(){ return this.name; } this.getAge=function(){
    return this.age; } }
    //实例化一个对象 var use=new User("aa",21); alert(use.name); alert(use.getAge()); //js对象继承 在面向对象的编程方法中,对象继承是必不可少的,那么怎么在javascript中实现继承机制呢。由于javascript并不是一个严格的面向对象的语言,因此在对象继承上也显的不一样。我们也来创建一个基类Polygon,代表一个多边形,一个多边形有个共同的属性就是边数(sides)和一个共同的方法计算面积(getAreas)。这样我们的这具Polygon类看起来就像下面这样定义: function Polygon(iSides){ this.sides = iSides; } Polygon.prototype.getAreas = function(){ return 0;} /* 因为基类并不能确定面积,因此在这里我们返回为0。 接着我们就创建一个子类Triangle,一个三角形,显然这个三角形是要从多边形继承的,因此我们要让这个Triangle类继承Polygon类,并且要覆盖Polygon类的getAreas方法来返回三角形的面积。我们来看下在javascript中的实现: function Triangle(iBase, iHeight){ Polygon.call(this,3); //在这里我们用Polygon.call()来调用Polygon的构造函数,并将3作为参数,表示这是一个三角形,因为边是确定的,所以在子类的构造函数中就不需要指定边了 this.base = iBase; //三角形的底
    this.height = iHeight; //三角形的高 }
    Triangle.prototype = new Polygon(); Triangle.prototype.getAreas = function(){ return 0.5 * this.base *this.height; //覆盖基类的getAreas方法,返回三角形的面积 } 参考上面的实现,我们再定义一个矩形: function Rectangle(iWidth, iHeight){ Polygon.call(this,4); this.width = iWidth;
    this.height = iHeight;} Rectangle.prototype = new Polygon(); Rectangle.prototype.getAreas = function(){ return this.width * this.height; } /* 好了,上面我们定义了一个基类和两个子数,下面我们来测试一个这两个子类是否能正常工作: var t = new Triangle(3,6); var r = new Rectangle(4,5); alert(t.getAreas()); //输出9说明正确 alert(r.getAreas()); //输出20说明正确 </script>
  • 相关阅读:
    分页
    IBM TAM手册
    单点登录集成商。
    Using Web Services Instead of DCOM
    symantec endpoint protection SEP禁用所有usb设备,只允许部分例外
    桌面管理landesk太古案例
    AdventureWorks数据库的安装和NorthWind例子数据库下载
    IBM Tivoli Access Manager for ebusiness 6.1.1 Administration and Deployment
    word编辑长文档方法
    笔记本电源消耗测量
  • 原文地址:https://www.cnblogs.com/yanypan/p/2524237.html
Copyright © 2011-2022 走看看