javascript基于prototype实现类似OOP继承的方法

作者:hongweigg 时间:2024-05-02 16:29:15 

本文实例讲述了javascript基于prototype实现类似OOP继承的方法。分享给大家供大家参考,具体如下:

这里要说明的是,公有属性(使用this.修饰符)可以被覆盖,私有属性(使用var 修饰符)不能被覆盖

子类不能访问父类的私有属性,父类的方法正常访问父类的私有变量。


function Vegetable(){
 this.taste='delicious';
 var a = 'I\'m Vegetable\'a!'
 this.fun1 = function(){
   alert('Vegetable fun1 doing...');
 }
 this.fun3 = function(){
   alert(a);
 }
}
function Celery(){
 var a = 'I\'m Celery\' a';
 this.color = 'green';
 this.taste = 'bad';
 this.fun1a = function(){
   alert('Celeryfun1 doing...');
 }
 this.fun2 = function(){
   alert('Celery fun2 doing...');
 }
 this.fun4 = function(){
   alert(a);
 }
}
Celery.prototype = new Vegetable();
var stick = new Celery();
var polymorphed = stick.taste;
//alert(polymorphed);
//alert(stick.color);
//stick.fun1();
//stick.fun2();
//stick.fun3();
stick.fun4();

希望本文所述对大家JavaScript程序设计有所帮助。

标签:javascript,继承
0
投稿

猜你喜欢

  • Python中HMAC加密算法的应用

    2021-07-29 15:55:18
  • JavaScript解释型模版

    2009-10-19 23:12:00
  • laravel执行php artisan migrate报错的解决方法

    2024-06-05 09:44:39
  • Python装饰器实现几类验证功能做法实例

    2023-11-11 18:09:30
  • python创建与遍历List二维列表的方法

    2023-04-29 13:07:48
  • Python classmethod装饰器原理及用法解析

    2023-02-14 06:59:01
  • Python特征降维知识点总结

    2022-07-12 11:17:42
  • 关于pyqt5控件自适应窗口超详细知识点汇总

    2021-03-26 14:37:57
  • Linux安装Python虚拟环境virtualenv的方法

    2022-07-07 00:33:36
  • mysql中优化和修复数据库工具mysqlcheck详细介绍

    2024-01-23 21:53:38
  • 利用Python实现朋友圈中的九宫格图片效果

    2023-07-31 01:37:22
  • asp fckeditor自定义上传文件的文件名

    2011-03-30 11:03:00
  • MySQL 5.7增强版Semisync Replication性能优化

    2024-01-22 21:39:04
  • 弹出对话框,点击跳出一个可拖动的层(对话框)

    2009-09-07 12:56:00
  • Python面向对象程序设计类的多态用法详解

    2021-05-28 20:21:29
  • Python自动化办公之定时发送邮件的实现

    2021-07-14 01:50:32
  • Typescript 封装 Axios拦截器方法实例

    2023-07-02 16:38:19
  • 正解SQLSERVER 2005 sql排序(按大小排序)

    2024-01-15 18:34:36
  • Golang 单元测试和基准测试实例详解

    2024-05-05 09:27:58
  • 详解Python NumPy中矩阵和通用函数的使用

    2023-05-29 15:57:18
  • asp之家 网络编程 m.aspxhome.com