我正在努力学习如何在Android上编程,当然这是使用Java。我很了解Java,但这让我感到困惑。
我作为一个函数查看的方法(PHP是我的本机编程语言)似乎可以在java文件中的任何地方声明,并且仍然可以在任何其他位置拉出来这样做吗?我的意思是在PHP中你必须定义一个函数(方法)然后才能调用它。所以一切都必须井然有序。
还调用一个函数,比如在你的方法中包含那段代码来调用它。例如:
方法1包含opendb命令 方法2包含closedb命令 oncreate方法调用方法1然后2它是否相应地行动。
对不起可能听起来很蠢,但我喜欢具体的答案,而不是我的假设。
答案 0 :(得分:3)
在java中声明方法的顺序并不重要。
方法彼此没有关系。无论其他方法method1
如何,您都可以调用method2
任意次。
示例可能如下所示:
public DatabaseManager {
public void openConnection() {
// ...
}
public void closeConnection() {
// ...
}
}
您可以使用以下方式调用:
DatabaseManager db = new DatabaseManager();
db.openConnection();
// do something
db.closeConnection();
答案 1 :(得分:2)
我作为一个函数查看的方法 (PHP是我的原生编程 语言)似乎可以宣布 在java文件中的任何地方仍然是 在任何其他方面退出是这个 所以?
嗯,部分正确:-)。 Java(与许多其他语言一样)具有方法“可见性”的概念(函数通常在Java中称为“方法”)。如果方法是private
,则它只在同一个类中可见(并且可用),如果它是public
则可以从任何地方调用。参见例如优秀的Java教程,涵盖了这个:http://download.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
但是,与PHP不同,在单个类中声明方法的顺序是无关紧要的。您可以在定义的点/行之前调用同一类中的方法。
也是调用一个函数 包括你的代码中的那部分代码 调用它的方法。例如:
是的,在最简单的情况下,调用方法的行为类似于在调用方法的位置包含该代码。但是有一些重要的区别:
因此将方法调用视为“包括代码”......
可能并没有什么帮助答案 2 :(得分:1)
你的问题根本不是Java。听起来你从来没有编写过面向对象的方式。你应该了解一个类是什么,一个方法是什么。
我强烈推荐OOP本身的基础知识:http://download.oracle.com/javase/tutorial/java/concepts/
答案 3 :(得分:0)
在Java中,您的方法可以在类中以任何顺序声明,例如
class A {
void C() { }
void B() { C() }
}
可以等效声明为
class A {
void B() { C() }
void C() { }
}
你的第二个问题不是很清楚。但只是为了澄清 - 没有什么比在Java中包含执行另一个脚本 - 通常你会创建新对象或运行类的静态方法来完成任务。
答案 4 :(得分:0)
Max ...我没有用PHP编写代码,但我做了很多脚本编写。根据我发现的在线文档,PHP本身并不支持事件。所以你是对的,一切都必须在PHP中“按顺序”。所以你可能需要从我长大的顺序编程模型开始,转而使用Android Java中使用的事件驱动模型。
您可以将程序分为三个部分。视图或演示文稿(main.xml)。控制器或事件处理程序(MyApp.java)和算法,比如model.java。 MyApp.java有“事件处理程序”,它基本上等待接收事件,因此您无法完全知道调用方法的顺序。在Model.java中执行繁重的工作并编写它以使它对视图一无所知并且可以重用。
因此在UNIX模型中是ENGINE,视图和控制器是INTERFACE。 INTERFACE-ENGINE与模型 - 控制器 - 视图。
希望有所帮助, JAL