a
, b
и c
не являются глобальными переменными . Java не имеет этой концепции. Это поля класса triareamain
.
Однако вы также создали параметры с тем же именем, поэтому эти имена shadowing поля .
Если вы хотите, чтобы метод areaCal()
напрямую использовал поля, удалите параметры:
public double areaCal() {
Если вы хотите, чтобы метод использовал параметры, передайте значения в вызове :
double finalarea = areaCal(a, b, c);
Если вы сохраняете параметры, я настоятельно рекомендую переименовать либо поля, либо параметры. Затенение имен переменных очень сбивает с толку программиста и с большой вероятностью станет причиной ошибок.