Java面向对象和JavaScript面向对象的区别

Java面向对象和JavaScript面向对象的区别

JS面向对象是采用原型链的方式设计的,JAVA是采用正统的面向对象的思想设计的.
1.面向对象的能力
JS对于对象的理解为“属性的无序集合,每个属性存放一个原始值、对象或函数”JS只有一种访问作用域public. JS不支持静态作用
Java的对象是具有类定义,类有方法,属性,还有静态,和访问作用域(public ,private, protected)。java支持静态作用域
早绑定与晚绑定
所谓绑定,是把对象的接口和对象实例结合在一起的方法。
早绑定,是在实例化对象之前定义它的特性与方法,编译器或解释程序就能提前转为机器代码。java是属于早绑定.
晚绑定,是编译器和解释程序在运行前,不知道对象的类型。ECMAScript的所有变量采用晚绑定。
2.定义类或者对象
JS定义类或者对象的方法有6种:
目前广泛使用的是构造函数/原型方式。动态原型方法也很流行,功能上与构造函数/原型等价
·工厂方法 提供能创建并返回特定类型对象的工厂函数

     function createCar(sColor, iDoors, iMpg){
   
      var oTempCar = new Object;
      oTempCar.color = sColor;
      oTempCar.doors = iDoors;
      oTempCar.mpg = iMpg;
      oTempCar.showColor = function (){
   
       alert(this.color);
      };
      return oTempCar;
     }
     varCar1 = createCar("red", 4, 23);

·构造函数方式 第一步选择类名,即构造函数的名字,根据惯例这个构造函数的首字母大写。

     function Car(sColor, iDoors, iMpg){
   
      
      this.color = sColor;
      this
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值