java基础之static

本文详细解析了在Java中静态方法如何调用静态和非静态成员,以及普通成员方法如何访问不同类型的成员变量。同时,文章还强调了静态方法不能直接调用非静态方法,需要通过创建对象来实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员,如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。

public class TestStatic{
    static int testData;
    int data;
    public static void test(){
        TestStatic ts=new TestStatic();
        System.out.println("静态变量:"+testData+","+"非静态变量:"+ts.data);
    }
    }

2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量。

static int testData;
int data;
public void test(){
	System.out.println("静态变量:"+testData+","+"非静态变量:"+data);
}

3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。

注:程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值