-
什么是强类型语言, 什么弱类型语言
-
什么是强类型语言:
- 一般编译型语言都是强类型语言
强类型语言, 要求变量的使用要严格符号定义
例如定义int num; 那么num中将来就只能存储整型数据
- 一般编译型语言都是强类型语言
-
什么是弱类型语言:
- 一般解释型语言都是弱类型语言
弱类型语言, 不会要求变量的使用要严格符合定义
例如定义 let num; num中既可以存储整型, 又可以存储布尔类型等
- 一般解释型语言都是弱类型语言
- 由于js语言是弱类型的语言,所以我们不用关注多态
-
什么是强类型语言:
-
什么是多态?
-
多态是指事物的多种状态
- 例如:
按下F1键这个动作,
如果当前是在webstorm界面下弹出的就是webstorm的帮助文档
如果当前是在Word界面下弹出的就是Word的帮助
同一个事件发生在不同的对象上会产生不同的效果
- 例如:
-
多态是指事物的多种状态
-
多态在其他编程语言中的体现
-
父类型变量保存子类型对象, 父类型变量保存当前的对象不同, 产生的结果也不同
// 在其他编程语言中多态需要通过配合继承实现 // 用js模拟其他编程语言 function Animal(myName) { this.name = myName; this.eat = function () { console.log(this.name + " 动物吃东西"); } } function Dog() { Animal.call(this, myName); this.eat = function () { console.log(" 狗吃东西"); } } Dog.prototype = new Animal(); Dog.prototype.constructor = Dog; function Cat() { Animal.call(this, myName); this.eat = function () { console.log(" 猫吃东西"); } } Cat.prototype = new Animal(); Cat.prototype.constructor = Cat; function feed(Animal animal) { animal.eat(); } function feed(animal){ animal.eat(); }
// 在js中默认就是多态 function Dog() { this.eat = function () { console.log(" 狗吃东西"); } } function Cat() { this.eat = function () { console.log(" 猫吃东西"); } } function feed(animal){ animal.eat(); } let dog = new Dog(); feed(dog); let cat = new Cat(); feed(cat);
-
网友评论