zoukankan      html  css  js  c++  java
  • JavaScript、ES6中的类和对象

           面向对象可以用于描述现实世界的事物,但是事物分为具体的(特指的)事物和抽象的(泛指的)事物。
    面向对象思维的特点:
    1.抽取(抽象)对象共有的属性和行为组织(封装)成一个类(模板)
    2.对类进行实例化,获取类和对象 
    3.对象--特指的
    1) 对象是一个具体的事物,一个苹果、一张网页、一个数据库、一个与远程服务器的连接也是对象;
    2) javascript中 对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如,字符串、数值、数组、函数等。
        属性:事物的特征,在对象中用属性来表示(常用名词)如,人的name
        方法:事物的行为,在对象中用方法来表示(常用动词)

    4.类--泛指的 
       可以用class关键字声明一个类(字母大写),之后以这个类来实例化对象。
    5.类和对象的区别:
    1) 类抽象了对象的公共部分,它泛指某一大类(class)
    2) 对象特指某一个,通过类实例化一个具体的对象 
    3) 类必须使用new实例化对象
    4) 创建类 创建对象
        语法:
    class Name { // body}
        创建实例:
    var xx = new Name();
    6.语法规范:
    1) 用class关键字声明一个类,首字母大写
    2) 类里面的constructor函数,存放的是类的共有属性;
        可以接受传递过来的参数,同时返回实例对象(不需要return哦)
        只要new生成实例时,就会自动调用这个函数,如果我们不写这个函数,类会自动生成这个函数
    3) 生成实例的new不能省略 
    4) 创建类时 类名后面不加小括号,生成实例 类后面加小括号 
    5) 构造函数不需要加function(类里面的所有函数不需要添加function)
    6) 多个函数方法之间不需要用逗号分隔
     
    具体的实例如下:
    // 1.创建一个明星类
    class Star{
        // 类的共有属性放到constructor中
        constructor(name, age){
            this.name = name;
            this.age  = age;
        }
        sing(song){
            alert(this.name+"唱"+song);
        }
        play(){
            alert("play");
        }
    }
    // 2.利用类创建对象
    var aa = new Star('小明', 20);
    var bb = new Star('小红', 20);
    
    console.log(aa.name); // 小明
    console.log(bb.age);  // 20
    aa.sing("lala"); // 小明唱lala
    bb.play(); // play
  • 相关阅读:
    096实战 在windows下新建maven项目
    095实战 ETL的数据来源,处理,保存
    094实战 关于js SDK的程序,java SDK的程序
    093实战 Nginx日志切割,以及脚本上传nginx的切割日志
    092实战 数据收集(各种事件)
    091实战 Nginx配置(日志服务器中关于日志的产生)
    android64位机子兼容32位.so库文件
    给 Android 初学者的 Gradle 知识普及
    Android重力感应开发
    随笔之Android平台上的进程调度探讨
  • 原文地址:https://www.cnblogs.com/sylys/p/11652518.html
Copyright © 2011-2022 走看看