现在的位置: 首页 > 综合 > 正文

了解JavaScript类

2013年10月27日 ⁄ 综合 ⁄ 共 1986字 ⁄ 字号 评论关闭

JavaScript

  1
JavaScript
 
  2       类是什么?
  3    许多刚接触编程的朋友都可能理解不了类,其实类是对我们这个现实世界的模拟,把它说成类别或者类型可能会更容易理解一些。比如这种动物就是一个类,而具体某一个人就是这个类的一个实例,可以有许多实例(地球人超过六十亿了),但这个类只有一个。你或许会说那男人和女人不也是人么?怎么只能有一个?其实这里要谈到一个继承的东西,后边才讲,请继续看下去。
  4       如何建立一个类?
  5    C++中是以class来声明一个类的,JavaScriptC++不同,它使用了与函数一样的function来声明,这就让许多学Jscript的朋友把类与函数混在一起了,在Jscript中函数与类确实有些混,但使用久了自然而然会理解,这篇文章是针对想进攻面向对象编程的朋友而写,就不打算一下子讨论得太深了。
  6    请看下边这个类的定义:
  7    function WuYouUser()
  8    {
  9        this.Name; //名字
 10    }
 11    上边的代码定义了一个WuYouUser(无忧用户)类,它有个属性:Name(名字)。Name就是WuYouUser类的一个属性。
 12    一个类有固定的属性,但类的实例却有不同的属性值,就像我是属于这个类的,性别是男,而我有一个女同学,她也属于类,但她的性别属性值却为女。
 13    那么如何声明某个类的一个实例呢?非常简单:
 14    var Wo = new WuYouUser(); //实例一:
 15    var Biyuan = new WuYouUser(); //实例二:碧原Biyuan哥,不好意思。。。嘿嘿)
 16        类的属性
 17    这个Wo(我)就是WuYouUser类的一个实例,它拥有WuYouUser给它的一切:Name属性、Sex属性以及Age属性,我们可以这样子来设置它的属性: 
 18    Wo.Name = "泣红亭"; 
 19    很简单是不是?试着运行
 20    window.document.write(Wo.Name);
 21    看看,是不是输出了我的名字:泣红亭?
 22    同样设置一下碧原兄的属性
 23    Biyuan.Name = "碧原";
 24    运行
 25        window.document.write(Biyuan.Name);
 26    可以看到输出了"碧原",也就说明了BiyuanWo同样是WuYouUser类的实例,但却是不同的实体,具有不同的属性值。
 27    属性是可以设置默认值的,无忧里都有记录大家各自发了多少贴子,我们也同样给WuYouUser类添加一个发贴数量的属性ArticleCount
 28    function WuYouUser()
 29    {
 30        this.Name;//名字
 31        this.ArticleCount = 0;
 32    }
 33    一个无忧新用户刚注册完之后他的发贴数量为0,在上边的代码中可以看到直接给属性ArticleCount设置值为0
 34    可以运行一下这样的代码:
 35    var Wo = new WuYouUser();
 36    window.document.write(Wo.ArticleCount);
 37    可以看到输出了0,说明ArticleCount属性被我们成功设置默认值为0
 38       类的方法
 39    方法这个词不大好理解,我觉得说成行为会更容易理解。一个人具有许多共同的行为,比如睡觉、吃饭、走路等等,现在我们给WuYouUser类添加一个发贴的方法。
 40    function WuYouUser()
 41    {
 42        this.Name;
 43        this.ArticleCount = 0;
 44        this.NewArticle = function()
 45        {
 46            /*
 47            *
 48            *    具体如何发贴我们大家都知道,不就是打打字,加加图片再按一下保存之类的按钮么?
 49            *    关于具体如何发贴的代码没有必要在这里写出来,我们要了解的仅仅是方法的定义与使用
 50            *    我们在这里实现一个最简单的功能,也是很重要的功能:给我们的发贴数量加上1
 51

抱歉!评论已关闭.