![](/img/trans.png)
[英]How to use a variable defined inside a method use outside the method in another method on the same Class in java
[英]Java - how to load method inside class it is defined?
例如,我有以下代碼:
public class A
{
private void my_method(){
//do something
}
}
那么如何在下面的代碼中調用該方法來使用它呢? 我在一個示例中看到它是這樣完成的:
public class A
{
public A {
my_method();
}
//some other code
private void my_method(){
//do something
}
}
但是嘗試這樣做會給我這個錯誤:
“令牌“ public”上的語法錯誤,此令牌后應為類”
當然,錯誤地使用advisor會出現此錯誤:
“嵌套的類型A無法隱藏封閉的類型”,所以看來我看到的代碼很糟糕,或者我做錯了什么。 任何人都可以解釋如何在Java中正確地做到這一點?
因為沒有正確編寫構造函數,所以出現此錯誤。 它應該是:
public A() {
my_method();
}
構造函數丟失()。 采用
public A() { }
只是為了擴展Jeroen的答案,因為您似乎對Java相當陌生:
可以從類中的另一個方法內部調用您的私有方法。 例如
public class A
{
public void anotherMethod() {
my_method();
}
private void my_method(){
//do something
}
}
您提供的代碼在類的構造函數中調用。 這是一種特殊的方法,當構造類型為A
的對象(例如new A();
時會調用該方法new A();
。 您可以說它是一個構造函數,因為它沒有指定返回類型:
public A() {
}
而不是常規方法:
public void a() {
}
需要注意的是,在Java中,習慣上(但並非強制要求)以小寫首字母命名普通方法,並以大寫首字母命名類/對象/構造函數。
因此,您的錯誤是在構造函數中,您沒有將()
放在方法名稱之后(在本例中為A
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.