js中,万物皆为对象,变量是个对象,方法是个对象,对象还是对象
每个类都有两个固定属性:prototype和proto,所有的实例化对象都有一个固定的属性:proto,可以把prototype理解成类中的共享库,类往里面添加东西它的实例化对象就可以直接访问
var Person=function (name) {
this.name=name;}
Person.prototype.age=10;
Person.prototype.show=function () {
alert("我的名字是:"+this.name);
}
Person.phone="1388888888";
var p1=new Person("孙悟空");
var p2=new Person("唐僧");
p1.age=44;
微信截图_20180423231123.png
这相当于java中构造一个Person对象
public Class Person{
private String name;
private int age;
public void setName(String name){
this.name=name;
};
public String getName(){
return this.name;
};
public Person(String name,Integer age){
this.name = name;
this.age=age;
}
}
Object p1= new Person("孙悟空",44);
这里的set get 方法 相当于prototype
构造方法相当于proto java中有默认的构造