如何才能使类的变量在外部能直接获取,在内部也能使用?
来源:6-7 如何创建和使用Flutter的路由与导航?【边学边做】
colpu
2020-02-14
1、请问static 声明变量和final声明的变量有什么区别?
我的需求是期望类的变量在外部能获取到变量title,在内部也能使用比如:
import 'package:flutter/material.dart';
class StatefulGroup extends StatefulWidget {
StatefulGroup({Key key}) : super(key: key);
static String title = 'StatefulWidget与基础组件';
_StatefulGroupState createState() => _StatefulGroupState();
}
class _StatefulGroupState extends State<StatefulGroup> {
Widget build(BuildContext context) {
return MaterialApp(
title: widget.title, // 期望这里能够使用声明的变量
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: null,
);
}
}
// 期望能通过类直接访问到**title**这个变量,
print(StatefulGroup.title);
写回答
1回答
-
CrazyCodeBoy
2020-02-16
static 声明的是静态变量;
final声明的是常量;
静态变量可以通过类名+.的方式访问,常量不允许被修改;
想在外部访问StatefulGroup的静态变量title只需要通过StatefulGroup.title访问即可,另外,如果访问的地方不在同一个文件中时,不要忘记导入StatefulGroup所在的文件;
import 'StatefulGroup所在的文件.dart';
112020-02-20
相似问题