Prototype使用Class

1.前言

Class对象主要提供如下的两个方法。

1)        create([superclass][,methods…]):定义一个新类,该新类继承superclass类里所有方法。

2)        addMethod(methods):扩展已有的类,该方法为一个已有的类新增方法,或者覆盖原有的方法。

2.例子 

<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="OwenWilliam" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> 使用Class </title>
</head>
<body>
<script src="../../prototype.js" type="text/javascript">
</script>
<script type="text/javascript">
// 定义一个新类
var Person = Class.create({
	// initialize方法就是构造器
	initialize: function(name, age)
	{
		this.name = name;
		this.age = age;
	},
	// 定义一个普通方法
	info: function()
	{
		alert(this.name + "的年龄是: " + this.age );
	}
});
// 创建Person类的实例
var p = new Person('yeeku' , 30);
// 调用方法
p.info(); 
// 定义Student继承Person
var Student = Class.create(Person , 
{
	// 定义新的构造器,$super形参代表父类同名方法
	initialize: function($super , name , age , grade)
	{
		$super(name, age);
		this.grade = grade;
	},
	// 定义一个普通方法
	study: function()
	{
		// 调用从Person继承到的info()方法
		this.info();
		alert("我上 " + this.grade + " 年级");
	}
});
// 创建Student对象
var s = new Student('wawa' , 8 , 3);
// 调用方法
s.study();
</script>
</body>
</html>

3.运行结果

Prototype使用Class_第1张图片
Prototype使用Class_第2张图片
Prototype使用Class_第3张图片

你可能感兴趣的:(JavaScript,web开发,prototype)