xzdjsnb 2022-03-24 21:52 采纳率: 92.2%
浏览 31
已结题

为什么可以一直用area,不报错

package com.atguigu.exer;
public class Exer {
    public static void main(String[] arge) {
          Exer test = new Exer();
          test.m = 10;
          test.n = 8;
          int area = test.area();
          System.out.println("矩形面积为: " + area);
    }
    
    int m;
    int n;
    
    public int area() {
        for(int i = 0;i < m;i++) {
            for(int j = 0;j < n;j++) {
                System.out.print("*");
            }
            System.out.println();
        }
        int area = m*n;
        return area;
    }
}

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2022-03-24 22:22
    关注

    因为定义的area都是局部变量,所以不会产生命名冲突。
    一个定义在main方法中,一个定义在area方法中,互不影响。
    如果定义在同一个方法中,或者其中一个定义为成员变量(类中),那就会出现变量已经在冲突。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月1日
  • 已采纳回答 3月24日
  • 创建了问题 3月24日

悬赏问题

  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失