`
zccst
  • 浏览: 3292335 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[Object]面向对象编程(高程版)(0)属性和方法

阅读更多
zccst转载+原创

function Person(){
     var private_name = "小明"; //私有属性
     var private_age = 10;      //私有属性
     this.privilege_name = "小红"; //特权属性
     this.privilege_age = 9;       //特权属性
}

Person.prototype.public_name = "小芳";  //公有属性
Person.prototype.public_age = 8;        //公有属性
Person.static_name = "小李"; //类静态属性
Person.static_age = 7;       //类静态属性

var pp = new Person();
pp.name = '小王'; //对象静态属性
pp.age = 6;       //对象静态属性



function Person(){
    var private_name = '私有属性';
    var private_age = 10;    
    this.privilege_name = '特权属性'; 
    this.privilege_age = 9; 
 
    //定义一个特权方法
    this.showPrivilegeName = function(){
    console.log(private_name);        //输出:"私有属性"。说明私有属性可以在特权方法中访问.
    console.log(this.privilege_name );//输出:"特权属性"。说明特权属性可以在特权方法中访问
    console.log(this.public_name);    //输出:"公有属性"。说明共有属性可以在特权方法中访问
    console.log(Person.static_name);  //输出:"类静态属性"。说明类的静态属性可以在特权方法中访问
  }
}
Person.prototype.public_name = '公有属性';
Person.prototype.public_age = 8;
Person.static_name = '类静态属性';
Person.static_age = 7;


//实例化对象
var pp = new Person();
pp.name = '小王';       
pp.age = 6;
 
//定义一个原型方法
Person.prototype.showName = function(){
  //console.log(private_name);        //undefined.说明私有属性不能在原型方法中访问.
  console.log(this.privilege_name );  //输出:"特权属性"。说明特权属性可以在原型方法中访问
  console.log(this.public_name);      //输出:"公有属性"。说明共有属性可以在原型方法中访问
  console.log(Person.static_name);    //输出:"类静态属性"。说明类的静态属性可以在原型方法中访问
}   
 
//pp.showPrivilegeName();

//pp.showName();

console.log(pp.private_name);         //undefined 私有属性不能在实例化的对象中访问 
console.log(pp.privilege_name );      //输出:"特权属性"。说明特权属性可以在原型方法中访问
console.log(pp.public_name);          //输出:"公有属性"。说明共有属性可以在原型方法中访问
console.log(Person.static_name);      //输出:"类静态属性"。说明类的静态属性可以在原型方法中访问
console.log(pp.name);                 //输出:"小王"。说明实例对象的静态属性可以在原型方法中访问
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics