开发者社区> 问答> 正文

java中根据访问对象不同可以将访问方式怎么划分呢?

已解决

java中根据访问对象不同可以将访问方式怎么划分呢?

展开
收起
格格的阿里云 2022-04-03 20:28:05 676 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    根据访问对象的不同,访问的方式可划分为两大类:

    · 访问对象在同一个类,此时可以通过[成员变量/方法的名字]直接访问。

    class A {
        int a = 10;
     
        void printA() {
            System.out.println(a);
        }
    }
     
    

    printA()要访问a,因为它们在同一个类,所以可以通过a直接访问。

    · 访问对象在不同类(假设访问对象在类B),此时可以通过声明、初始化B的一个对象,通过[对象名.成员变量/方法的名字]进行访问。

    ps:这种情况仅限于成员方法访问成员变量/方法。

    class A {
        void printB() {
            B ob = new B();
            System.out.println(ob.b);
        }
    }
    
    class B {
        int b = 10;
    }
    

    A中的printB()要访问B中的b,因为它们不在同一个类,所以可以在printB()中声明、初始化B的一个对象ob,通过ob.b进行访问。

    此外,当访问对象为静态变量/方法时,可以通过[访问对象所在类的类名.成员变量/方法的名字]进行访问。

    class A {
        static int a = 10;
     
        int doubleA = A.a * 2;
     
        void printB() {
            System.out.println(B.b);
        }
    }
     
    class B {
        static int b = 10;
    }
    

    doubleA要访问a,由于a为静态变量,因此可以通过A.a进行访问。

    A中的printB()要访问B中的b,由于b为静态变量,因此可以通过B.b进行访问。

    2022-04-03 20:33:36
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载