标签:js 面向对象
<script type="text/javascript">
//1.hello js面向对象
function Hello(){
alert(99);
}
function _test1(){
var hello=new Hello();
}
//2.定义实例变量
function Page(){}
Page.prototype = {
//2.1定义属性 类似于java的成员变量
name:‘当前页‘, //该属性是共有属性 相当于java中的public修饰的变量
nextPage:function(){
alert(‘跳转到下一页‘);
}
};
function _test2(){
var page=new Page();
page.nextPage();//类似于java中的方法
page.name;
alert(page.name);
//2.2 注意属性的赋值形式
page.name="我被修改了";
alert(page.name);
}
//3.定义对象中的私有变量 类似于java中的被private修饰的属性
function Person(){
//这种定义不会被直接调用
var name="我是私有的成员变量";
this.getName=function(){
alert(name);
alert(this.name); //打印出undifined 原因在于name没有提供get方法 或者理解为js的obj.xxx只针对共有变量 这一点区别于java
}
}
function _test3(){
var person=new Person();
person.getName();// 3.1 打印出 "我是私有的成员变量";
alert(person.name);// 3.2 打印出undifined
}
//4.js如何定义类的静态方法
function User(){
}
User.name="我是静态属性名";
User.getSex=function(){
alert(‘获取性别‘);
}
function _test(){
var person=new Person();
person.getName();//实例访问方法
User.getSex(); //静态方法
//静态方法不能被访问 和java一样 生命周期不一样
var user=new User();
user.getSex();
}
</script>
标签:js 面向对象
原文地址:http://6276718.blog.51cto.com/6266718/1665673