Java基础知识

public class MyClass {
    // 这是类的内部上下文
    private int privateField; // 私有字段
    public int publicField; // 公共字段

    private void privateMethod() {
        // 私有方法
    }

    public void publicMethod() {
        // 公共方法
    }

    // 类的外部上下文
    public static void main(String[] args) {
        MyClass obj = new MyClass(); // 在类的外部创建对象

        // 在类的外部,只能访问公共成员
        obj.publicField = 42; // 可以访问公共字段
        obj.publicMethod(); // 可以调用公共方法

        // 下面的代码将会导致编译错误,因为 privateField 和 privateMethod 是私有的
        // obj.privateField = 789;
        // obj.privateMethod();
    }
}

private定义了类的成员(字段和方法)只能在类的内部(类的内部是指类的定义体内部)被使用,即使类实例化也不能调用。

static  成员是静态的,可以通过类名直接访问

public class MyClass {
    // 静态字段
    public static int staticField = 0;

    // 静态方法
    public static void staticMethod() {
        System.out.println("This is a static method.");
    }
}

public class Main {
    public static void main(String[] args) {
        // 可以通过类名直接访问静态字段和静态方法
        MyClass.staticField = 42;
        MyClass.staticMethod();

        // 也可以通过对象来访问静态成员,但不推荐这样做,因为它们与对象无关
        MyClass obj = new MyClass();
        obj.staticField = 123; // 可以这样做,但不推荐
        obj.staticMethod(); // 可以这样做,但不推荐
    }
}

在Java中,通过类名访问静态成员(静态字段和静态方法)的原因是因为静态成员属于类本身,而不是特定的对象实例。这意味着它们在类加载时就已经存在,无需创建对象就可以使用。

静态成员被存储在类的静态区域内存中,而不是每个对象实例的堆内存中。这使得它们在整个应用程序的生命周期内都存在,并且可以被多个对象实例共享。因此,为了方便访问这些成员,Java设计了通过类名直接访问的机制,而不需要首先创建类的对象。

final

"final" 是一个关键字,它用于表示某个实体(通常是类、方法、变量等)具有最终性质,不可被继承、重写或修改。

this    表示当前对象的引用,可以使用 this 来引用当前对象的成员变量和方法。

public class MyClass {
    private int value;

    public MyClass(int value) {
        // 使用 this 引用成员变量和方法
        this.value = value;
    }

    public void printValue() {
        System.out.println("Value is: " + this.value);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值