用EXT模拟面向对象的java代码

      最近开始接触AJAX框架―EXT了,学习之余,也将自己的心得记录下来,就权当是读书笔记吧。其实之前总是不太适应基于对象的javascript写法,不过通过EXT框架,还是基本熟悉了其对象式的编码,很基础,见下文

      1 namespace

       EXT用命名空间来组织类定义,就好比c#的namespace或java的package。如定义pojo类的命名空间:

     Ext.namespace("Ext.domain");

     JAVA代码对照:

     package Ext.domain;

      2 类定义

      同javascript一样,用function定义类,(但是此处,还没有说明构造函数),如:

     EXt.domain.Person = function() { } ;

      3 类成员变量定义

        可以用prototype来给某个类定义成员变量,既然是用prototype,就是非静态的。Ext.apply是EXT框架提供的静态的方法,可以完成这一定义。如下:

      Ext.apply(Ext.domain.Person.prototype,{name:"张三"});

      JAVA代码对照:

      private String name = "张三";

      public void setName(String name) {this.name = name;}

      public String getName() {return this.name;}

       4 类实例方法定义

       代码如下:

      Ext.apply(Ext.domain.Person.prototype,{  

                          getDetails : function(){

                                                 alert(String.format("姓名:{0},年龄{1} ",this.name,this.age));

               }

       });

      5 类静态方法

        Ext.domain.Person.getDetails = function(_name,_age){

         var _person = new Ext.domain.Person();

         _person.name = _name;

         _person.age = _age;

         alert(String.format("姓名:{0},年龄{1} ",_person.name,_person.age));

      }

       

发布了30 篇原创文章 · 获赞 6 · 访问量 14万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章