2014-12-13 2 views
0

Если мы можем определить метод внутри «государственной статической силы основных()», который также является функцией, почему мы не можем сделать, как это -Почему методы не могут быть определены внутри определения метода

public void method_1() 
{ 
     //statements 
     public void method_2() 
       { 
         //statements 
       } 
} 
+4

Вы не можете определить метод внутри 'main', который является методом. –

+0

Почему вы хотите определить метод внутри другого метода –

+0

Вы не можете сделать ни один без лямбды или внутреннего класса somekind; что вы пытаетесь на самом деле сделать? –

ответ

1

Method по его определению должно принадлежать классу. Вы можете иметь внутренние классы внутри метода, и внутри внутреннего класса вы можете иметь методы.

+0

Хотя ваше утверждение верно, оно не объясняет, почему мы не можем (или не должны) писать методы внутри метода, такого как Rudraksh. –

0

Потому что это вообще нехорошая идея для функции области A внутри функции B. В противном случае функция B могла бы использовать функцию A. В этом случае вы предпочитаете использовать функцию A как частный метод из класс в любом случае. Если вы хотите сделать противоположное этому, то функция public public позволит любому методу/функции использовать функцию A. Понимать идею наличия частных и общедоступных методов/функций достаточно, чтобы ответить на ваш вопрос.

Смежные вопросы