zoukankan      html  css  js  c++  java
  • 构造方法:

    构造方法:

    		class Student{
    			constructor (name,age){
    				this.name 
    
    =name;
    				this.age=age;
    			}
    			run(){
    				console.log("我会跑");
    			}
    		}
    		let xs = new Student("曹伟",22);
    		console.log(xs);//打印:Student {name: "曹伟", age: 22}。
    		//constructor:实例化那些默认属性。
    		
    		
    		继承:
    		class Teacher extends Student{
    			constructor (name,age,sex){
    				super(name,age);
    				this.sex=sex;
    			}
    			eat(){
    				console.log(this.name 
    
    +"is eating")
    			}
    		}
    		var ls = new Teacher("美女","30","母");
    		console.log(ls);//打印:Teacher {name: "美女", age: "30", sex: "母"}。
    		ls.eat();//打印:老师is eating。
    		//extends:继承。
    		//super:继承属性方法。
    		注释:在构造方法里的super是指反类的构造方法。
    

    		get,set,static:
    		class Student{
    			constructor (name,age){
    				this.name 
    
    =name;
    				this.age=age;
    			}
    			run(){
    				console.log("我会跑");
    			}
    			get xm(){
    				return this.name 
    
    +"123";
    			}
    			set xm(value){
    				this.name 
    
    =value;
    			}
    			static shangxue (){
    				console.log("去读书");
    			}
    		}
    		let xs = new Student("曹伟",25);
    		console.log(xs.xm);
    		xs.xm="骚胖";
    		console.log(xs.xm);
    		Student.shangxue();
    		//get:获取加赋值。
    		//set:设置。
    		//static:静态方法|类方法。
    		//set和get的方法名相同,而且可以同名
    		
    		
    		方法重载|方法覆盖:
    		class Student{
    			constructor (name,age){
    				this.name 
    
    =name;
    				this.age=age;
    			}
    			run(){
    				console.log("我会跑");
    			}
    		}
    		let xs = new Student("曹伟",25);
    		
    		class Teacher extends Student{
    			constructor (name,age,sex){
    				super(name,age);
    				this.sex=sex;
    			}
    			eat(){
    				console.log(this.name 
    
    +"is eating")
    			}
    run(){
    			super.run();
    			console.log("我一直在跑");
    			}
    		}
    		var ls = new Teacher("老师","30","男");
    		ls.run();//我会跑 我一直在跑;
    		
    		注释:虽然子类继承了父类的run方法,但是子类会把父类的方法给覆盖掉,这个就是方法覆盖。
  • 相关阅读:
    js面向对象和PHP面相对象
    git
    css3动画、2D与3D效果
    渲染数据方式
    ajax
    面向对象
    Date 日期
    Math 数值对象
    What is CGLib and JDK动态代理
    IDEA中lock对象不提示newCondition();
  • 原文地址:https://www.cnblogs.com/GJcaowei/p/7197382.html
Copyright © 2011-2022 走看看