[英]Calling a Method if another Method is called
我很好奇 在Java中,是否可以将新创建的方法嵌套在方法内部? 我问这个问题是因为在我的书中,每个部分都有这些练习(我目前在Objects / Classes上),并且有一个问题告诉您,如果在同一个类中调用了另一个方法,则将布尔方法称为true。 (在被称为布尔变量的类中变为true)。 这是一个例子:
public void setTrue(int someRandomStuff) {
this.someRandomStuff = superRandomStuff;
// this is where the boolean variable comes into play
trueOrFalse = true;
}
现在,我想知道是否可以在此方法中放置另一个方法,以调用方法setTrue是否将'trueOrFalse'设置为true? 还是我必须完全创建另一种方法? 我只是以这种方式尝试,因为我还没有真正读过任何说不可能的内容。 我已经尝试过了,但是IntelliJ并没有真正显示出它是否错了,所以我假设它一定有可能。
这是我尝试进一步澄清我的意思的内容:
public void setTrue(int someRandomStuff) {
this.someRandomStuff = superRandomStuff;
trueOrFalse = true;
if (trueOrFalse) {
public boolean getTrueOrFalse() {
return true;
}
}
我正在诚实地尝试学习事物为什么以及如何以它们的方式工作,而不是仅仅这样做,因为某人/某事告诉我这就是现在的样子,并且永远都会如此。
如果您对格式感到好奇或想要进行与此类似的练习,则可以将本书称为: Java简介,综合版本(第9版)。
不,您不能在另一个方法中有方法定义,必须在类中单独定义方法,否则该代码将无法编译
不,您不会相互嵌套方法,而是将它们全部列在一个类中。 但是,您可以在同一类中从另一个方法调用一个方法。 我想你已经做了很多次了。 因此,它看起来像:
public class Something {
public void methodOne() {
// does something
}
public int methodTwo() {
// does somethingElse
}
public void methodThree() {
int variable = methodTwo();
}
}
您不能像这样嵌套您的方法。 从您的代码来看,您似乎想要设置一个类变量。 将方法变量设置为true
并将类变量设置为true
boolean isMethodCalled = false;
public void doMethod(int someRandomStuff) {
this.someRandomStuff = superRandomStuff;
isMethodCalled = true;
}
然后,您可以定义另一个返回trueOrFalse类变量的方法。
public boolean getIsMethodCalled() {
return isMethodCalled;
}
调用doMethod时,这将使isMethodCalled为true。 否则,isMethodCalled将返回false。
不允许在Java中嵌套方法。 它将给出编译错误。 如果您的需求要求从一个方法调用另一个方法,则可以在与private
相同的类中声明您的方法并调用它们。
public class MethodNesting {
public void method() {
myinnerMethod();
}
private void myinnerMethod() {
// Do Something
}
}
如果您想知道更多信息,请看一下
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.