我是Android开发和Java的新手。我不明白这行代码的实际含义,它的意义是什么...请帮助...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
这意味着onCreate是超类中的一个方法,这是您当前类正在扩展的类。
@Override
是一个注释,它确保onCreate在超类中,否则编译器会抱怨。此批注确保您不会弄乱该方法的语法,并且在运行时难以找到问题所在。
super.onCreate(savedInstanceState);
该语句首先调用超类onCreate,然后继续。
class SuperClass
{
public void onCreate()
{
System.out.println("Super");
}
}
public class Apps extends SuperClass
{
@Override
public void onCreate()
{
super.onCreate();
System.out.println("Sub");
}
public static void main(String[] args)
{
SuperClass supRef = new Apps();
supRef.onCreate();
}
}
现在,Apps是一个子类,而SuperClass是由Apps扩展的类,因此这是超类。
现在,该程序的进一步输出将是:
Super
Sub
希望这可以解释对super.onCreate()的调用;
现在,假设您在Apps中将onCreate定义为:
public void onCreate(int h)
没有@Override的编译器将不会抱怨,并且输出将是
Super
因此,您将必须重新检查代码,或调试为什么未打印Sub的原因。
最后一件事,这些是OOP和Java的基础,我认为您应该在开始用Java编码之前首先阅读这些概念。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句