ts中的面向对象

ts中的面向对象

把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。
类:就是对象的模型,可以通过类去创建对象,规定一个对象中都有哪些属性、方法
 class Person {
	static name:string = 'dog',			// 在属性前使用static关键字,可以定义属性 ==> 静态属性
	readonly age:number = 2				// 使用readonly定义的属性,为只读属性,无法进行修改
	art:string = 'bto'					// 没有定义的是实例属性,需要通过对象的实例去访问
	// 定义方法
	sayHello() {
		console.log(555)				// 调用sayHello时,会在控制台上打印
	}
}

// 调用
const per = new Person()    // 所有的内容打印出来
per.sayHello()				// 调用sayHello方法,打印内容

// 注: 和属性相似,如果方法以 static开头,则方法为类/静态方法,可以直接通过类去调用,不以此开头的
// 话可以创建实例对象,通过实例对象去获取

继承

使用继承后,子类将继承父类的所有方法,通过继承可以将多个类中共有的代码,写在一个父类中。这样只要写一次,便可以让所有的子类,同时拥有父类的属性和方法,如果想要在子类中增加一些父类中所没有的属性和方法,直接增加就行

好处就是可以在不修改原来类的基础上,对这个类进行扩展
// 自定义执行函数
(function(){
	// 定义一个父类:
	class Animal {
		name:string,
		age:number,
		constourctor(name:string,age:number){
			this.name = name,
			this.age = age
		}
		sayHello(){
			console.log('嗷嗷嗷')
		}
	}
	class Dog extends Animal {		// 使用dog继承Animal父类的属性和方法
		run(){						// =====>  增加一个私有属性
			console.log(Dog is run)
		}
		sayHello(){					// 如果在子类中添加了和父类相同的方法,则子类会覆盖掉父类的方
			console.log('汪汪汪')	// 法,这一昂的形式称为方法的重写
		}
	}
})()
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值