【发布时间】:2014-01-12 22:09:52
【问题描述】:
我来自没有包和命名空间的 Objective-C。
Android 有 android.text.format.DateFormat,它有返回 java.text.DateFormat 实例的静态方法(特别是getLongDateFormat() 和getMediumDateFormat())。
这些方法是被称为“静态方法”还是“类方法”或两者都可以互换?
看看Android documentation,我怎么知道 android.text.format.DateFormat 方法返回 java.text.DateFormat 实例而不是 android.text.format.DateFormat 实例(返回后者的实例是我最初所期望的)?
如何导入必要的包才能在我的源代码中使用这两个类?
我的实现代码可以这样写吗:
DateFormat df = DateFormat.getLongDateFormat(this.getActivity());
mLabel.setText(df.format(mEvent.getDate());
我写它的另一种方式是使用完整的包名,但这似乎没有必要:
java.text.DateFormat df = android.text.format.DateFormat.getLongDateFormat(this.getActivity());
mLabel.setText(df.format(mEvent.getDate());
【问题讨论】:
-
无赖!这个问题收到了我三年来对 StackOverflow 的第一次反对票! Q_Q
-
static方法将被视为class方法。大多数人只会称它们为静态方法,但也可以将它们称为 (在这种情况下)“工厂”方法。这意味着,它们是一个静态方法,它创建并返回一个对象供您使用。
标签: java namespaces packages