Dart静态方法对象操作符和类的继承
Posted loaderman
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dart静态方法对象操作符和类的继承相关的知识,希望对你有一定的参考价值。
/* Dart中的静态成员: 1、使用static 关键字来实现类级别的变量和函数 2、静态方法不能访问非静态成员,非静态方法可以访问静态成员 */ // class Person // static String name = ‘张三‘; // static void show() // print(name); // // // main() // print(Person.name); // Person.show(); // class Person static String name = ‘张三‘; int age=20; static void show() print(name); void printInfo() /*非静态方法可以访问静态成员以及非静态成员*/ // print(name); //访问静态属性 // print(this.age); //访问非静态属性 show(); //调用静态方法 static void printUserInfo()//静态方法 print(name); //静态属性 show(); //静态方法 //print(this.age); //静态方法没法访问非静态的属性 // this.printInfo(); //静态方法没法访问非静态的方法 // printInfo(); main() // print(Person.name); // Person.show(); // Person p=new Person(); // p.printInfo(); Person.printUserInfo();
/* Dart中的对象操作符: ? 条件运算符 (了解) as 类型转换 is 类型判断 .. 级联操作 (连缀) (记住) */ class Person String name; num age; Person(this.name,this.age); void printInfo() print("$this.name---$this.age"); main() // Person p; // p?.printInfo(); // Person p=new Person(‘张三‘, 20); // p?.printInfo(); // Person p=new Person(‘张三‘, 20); // if(p is Person) // p.name="李四"; // // p.printInfo(); // print(p is Object); // var p1; // p1=‘‘; // p1=new Person(‘张三1‘, 20); // // p1.printInfo(); // (p1 as Person).printInfo(); // Person p1=new Person(‘张三1‘, 20); // p1.printInfo(); // p1.name=‘张三222‘; // p1.age=40; // p1.printInfo(); Person p1=new Person(‘张三1‘, 20); p1.printInfo(); p1..name="李四" ..age=30 ..printInfo();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name=‘张三‘; num age=20; void printInfo() print("$this.name---$this.age"); class Web extends Person main() Web w=new Web(); print(w.name); w.printInfo();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name; num age; Person(this.name,this.age); void printInfo() print("$this.name---$this.age"); class Web extends Person Web(String name, num age) : super(name, age) main() // Person p=new Person(‘李四‘,20); // p.printInfo(); // Person p1=new Person(‘张三‘,20); // p1.printInfo(); Web w=new Web(‘张三‘, 12); w.printInfo();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name; num age; Person(this.name,this.age); void printInfo() print("$this.name---$this.age"); class Web extends Person String sex; Web(String name, num age,String sex) : super(name, age) this.sex=sex; run() print("$this.name---$this.age--$this.sex"); main() // Person p=new Person(‘李四‘,20); // p.printInfo(); // Person p1=new Person(‘张三‘,20); // p1.printInfo(); Web w=new Web(‘张三‘, 12,"男"); w.printInfo(); w.run();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name; num age; Person(this.name,this.age); Person.xxx(this.name,this.age); void printInfo() print("$this.name---$this.age"); class Web extends Person String sex; Web(String name, num age,String sex) : super.xxx(name, age) this.sex=sex; run() print("$this.name---$this.age--$this.sex"); main() // Person p=new Person(‘李四‘,20); // p.printInfo(); // Person p1=new Person(‘张三‘,20); // p1.printInfo(); Web w=new Web(‘张三‘, 12,"男"); w.printInfo(); w.run();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name; num age; Person(this.name,this.age); void printInfo() print("$this.name---$this.age"); work() print("$this.name在工作..."); class Web extends Person Web(String name, num age) : super(name, age); run() print(‘run‘); //覆写父类的方法 @override //可以写也可以不写 建议在覆写父类方法的时候加上 @override void printInfo() print("姓名:$this.name---年龄:$this.age"); @override work() print("$this.name的工作是写代码"); main() Web w=new Web(‘李四‘,20); w.printInfo(); w.work();
/* 面向对象的三大特性:封装 、继承、多态 Dart中的类的继承: 1、子类使用extends关键词来继承父类 2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数 3、子类能复写父类的方法 getter和setter */ class Person String name; num age; Person(this.name,this.age); void printInfo() print("$this.name---$this.age"); work() print("$this.name在工作..."); class Web extends Person Web(String name, num age) : super(name, age); run() print(‘run‘); super.work(); //自类调用父类的方法 //覆写父类的方法 @override //可以写也可以不写 建议在覆写父类方法的时候加上 @override void printInfo() print("姓名:$this.name---年龄:$this.age"); main() Web w=new Web(‘李四‘,20); // w.printInfo(); w.run();
以上是关于Dart静态方法对象操作符和类的继承的主要内容,如果未能解决你的问题,请参考以下文章