1 Dart中类的继承

1.子类使用extends关键字来继承父类
2.子类会继承父类里面可见的属性和方法,但是不会继承构造函数
3. 子类能够复写父类的方法 getter和setter方法

2Dart Web类继承Person这个类

class Person {
String name = '张三';
int age = 19;
void getInfo() {
//推荐使用这样的写法
print("${this.name}====${this.age}");
}
} // Web这个类继承父类Person;
// 可见属性和方法是指 父类公开的属性和方法
class Web extends Person {}
void main() {
Person w = new Web();
print(w.name);//输出张三
}

2 Dart中 super关键字的使用

class Person {
String name;
int age;
Person(this.name, this.age);
void getInfo() {
//推荐使用这样的写法
print("${this.name}====${this.age}");
}
} // Web这个类继承父类Person;
// 可见属性和方法是指 父类公开的属性和方法
class Web extends Person {
// Web(String name, int age) 表示Web类的构造函数
// : super(name, age) 在实例之前,给内部初始化数值
Web(String name, int age) : super(name, age);
}
void main() {
Web w = new Web('张三', 23);
w.getInfo(); //张三====23
}

3 Dart 子类自己的属性和方法

class Person {
String name;
int age;
Person(this.name, this.age);
void getInfo() {
print("${this.name}====${this.age}");
}
} // Web这个类继承父类Person;
// 可见属性和方法是指 父类公开的属性和方法
class Web extends Person {
// Web(String name, int age) 表示Web类的构造函数
// : super(name, age) 在实例之前,给内部初始化数值
String sex;
Web(String name, int age, String sex) : super(name, age) {
this.sex = sex;
}
// 子类自己的方法
run() {
print("${this.name}====${this.age}====${this.sex}");
}
} void main() {
Web w = new Web('张三', 23, '男');
// 如果子类有自己的方法,就调用子类的方法;如果没有就去找父类的方法
w.run(); //张三====23
}

4 Dart 命名构造函数传递参数

class Person {
String name;
int age;
Person(this.name, this.age);
// 定义了一个命名构造函数
Person.xxxx(this.name, this.age); void getInfo() {
print("${this.name}====${this.age}");
}
} // Web这个类继承父类Person;
// 可见属性和方法是指 父类公开的属性和方法
class Web extends Person {
String sex;
// super.xxxx(name, age)命名构造函数传递参数哈~~~ //给默构造函数传递参数,Web(String name, int age, String sex)
//super.xxxx(name, age) 调用父类自定义构造函数
Web(String name, int age, String sex) : super.xxxx(name, age) {
this.sex = sex;
}
// 子类自己的方法
run() {
print("${this.name}====${this.age}====${this.sex}");
}
} void main() {
Web w = new Web('张三', 23, '男');
// 如果子类有自己的方法,就调用子类的方法;如果没有就去找父类的方法
w.run(); //张三====23
}

4 Dart 重写父类方法

class Person {
String name;
int age;
Person(this.name, this.age);
void getInfo() {
//推荐使用这样的写法
print("${this.name}====${this.age}");
}
} // Web这个类继承父类Person;
// 可见属性和方法是指 父类公开的属性和方法
class Web extends Person {
//给默构造函数传递参数,Web(String name, int age, String sex)
//super(name, age) 调用父类默认构造函数
Web(String name, int age) : super(name, age); // 覆写父类方法 通常要加这个@override
@override
getInfo() {
print('覆写父类方法==>${this.name}====${this.age}');
}
} void main() {
Web w = new Web('张三', 23);
w.getInfo(); //覆写父类方法==>张三====23
}

dart子类的继承的更多相关文章

  1. Java中子类能继承父类的私有属性吗?

    前段时间去听老师讲课的时候,老师告诉我子类是可以继承父类所有的属性和方法的.当时我是极其疑惑的,因为之前学校考试时这个考点我记得很清楚:子类只能继承父类的非私有属性和方法.老师给我的解释是这样的--先 ...

  2. Java 继承问题 -- 子类是否继承父类的私有属性

    理解一: 子类会继承父类的所有属性和方法,至于能不能直接访问,那就是访问权限的问题了. 例如:父类有个private String name; 属性.子类会继承下来,但子类访问不了,因为是privat ...

  3. java第五章 子类与继承

    5.1子类与父类 1   java不支持多重继承,即一个子类不可以从多个父类中同时继承,而C++中可以. 人们习惯地称子类与父类的关系式“is—a”的关系 2   再类的声明过程中,通过关键字exte ...

  4. java中继承,子类是否继承父类的构造函数

    java中继承,子类是否继承父类的构造函数 java继承中子类是不会继承父类的构造函数的,只是必须调用(隐式或者显式) 下面来看例子: public class TestExtends { publi ...

  5. @interface __ annotation 子类可以继承到父类上的注解吗--有结论了

    博客分类: Java/J2se   作者:赵磊 博客:http://elf8848.iteye.com 不了解注解基础知识的请先看<JDK 5 Annotation\注解\注释\自定义注解> ...

  6. Java基础知识笔记第五章:子类与继承

    子类与父类 子类 class 子类名 extends 父类名{ ....... } 类的树形结构 子类的继承性 子类和父类在同一包中的继承性 子类继承了父类不是private的成员属性和成员方法   ...

  7. Python父类和子类关系/继承

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ @File:继承_子类和父类的关系.py @E-mail:364942 ...

  8. C++ 继承方式 //语法:class 子类 :继承方式 父类 //继承方式 三种: //1.公共继承 //2.保护继承 //3.私有继承

    1 //继承方式 2 //语法:class 子类 :继承方式 父类 3 //继承方式 三种: 4 //1.公共继承 5 //2.保护继承 6 //3.私有继承 7 8 #include <ios ...

  9. javascript中子类如何继承父类

    参考阮一峰的文章:http://javascript.ruanyifeng.com/oop/inheritance.html#toc4 function Shape() { this.x = 0; t ...

  10. java 子类不能继承父类的static方法

    先来看一段代码 /** * Created by bjchengpeng on 2018/7/19. */ /**运行结果 * woof * woofaa * * woof * Basenjiaa * ...

随机推荐

  1. 拯救php性能的神器webman-数据库

    有了webman的这个框架,我们得看看它是怎么使用数据库的,毕竟我们不能一直用内存变量啊. 好,很简单一句话跑起来. composer require -W illuminate/database i ...

  2. python3的json数据库-TinyDB效率篇

    安装了这个TinyDB库后,我突然想到一般来说python执行的速度并不算高,那这个库写文件速度如何呢? 测试代码如下: from tinydb import TinyDB import time # ...

  3. 1.TP6的入门-安装

    打开官网,找到这里点击手册 或者直接访问 这里 可以看到TP6已经有了赞助商 然后往后面阅读,发现他推荐我们读这个 这个入门必读还是不错的,简单的看看就行 后面就开始安装吧 首先注意自己的环境php版 ...

  4. Jenkins之插件汇总

    Nodejs: 构建前端项目或Node项目 Build Name and Description Setter Publish over SSH: 远程执行shell命令 Blue Ocean   友 ...

  5. go官方包依赖管理工具之mod

    1.1.go mod是什么 go mod 是Golang 1.11 版本引入的官方包(package)依赖管理工具,用于解决之前没有地方记录依赖包具体版本的问题,方便依赖包的管理. 之前Golang ...

  6. Educational Codeforces Round 90 (Rated for Div2)

    Donut Shops 现在有两个超市,第一个超市的物品按件卖,每件商品的售价为\(a\)元:第二个超市的物品按箱卖,每箱有\(b\)件物品,每箱售价为\(c\)元,现在要让你买\(x\)和\(y\) ...

  7. Python 在同一/或不同PDF之间复制页面

    操作PDF文档时,复制其中的指定页面可以帮助我们从PDF文件中提取特定信息,如文本.图表或数据等,以便在其他文档中使用.复制PDF页面也可以实现在不同文件中提取页面,以创建一个新的综合文档.本文将介绍 ...

  8. Nuxt.js 应用中的 afterResponse 事件钩子

    title: Nuxt.js 应用中的 afterResponse 事件钩子 date: 2024/12/6 updated: 2024/12/6 author: cmdragon excerpt: ...

  9. electron项目icon显示异常

    前情 公司有个桌面端项目是基于Electron开发的. 坑 构建打包好的项目在桌面和任务栏上图标显示正常,但是在任务栏弹框上左上角的图标确不显示 Why? 经过反复搜索,网上有文章说如果ico图标过大 ...

  10. 用 16G 内存存放 30亿数据(Java Map)转载

    在讨论怎么去重,提出用 direct buffer 建 btree,想到应该有现成方案,于是找到一个好东西: MapDB - MapDB : http://www.mapdb.org/ 以下来自:ko ...