类的使用中:为什么静态方法中使用非静态成员变量需要创建,静态的不需要,非静态方法中可以随便使用两者

package com.qf.javase.day11;

/**
 * @author : 徐兴
 * @version : 1.0
 * @date : 2022/3/1 14:13
 */
public class StaticDemo2 {
//    static和非static的使用上的
//    变量
//    使用static修饰的 -- 静态变量
    static String name;

    //    普通的成员变量
    int age;

    //  静态方法
    public static void method1(){
        System.out.println("这是method1");
    }

    //    普通的成员方法
    public void method2() {
        System.out.println("这是method2  非static");
    }

    //    静态用静态
    public static void test1(){
//        静态方法
//      1. 调用静态的成员 -- 包括静态方法和静态变量  -- 可以直接调用
        name = "Gosling";
        method1();

//        2. 调用非静态的成员 -- 先创建对象然后才能使用
//        age = 18;
//        method2();
        StaticDemo2 demo2 = new StaticDemo2();
        demo2.age = 18;
        demo2.method2();

//        在静态方法内无法使用this  -- 静态方法创建的时候, 对象还没有创建,因此无法使用this
//        System.out.println(this);
    }

    //    非静态方法 -- 在使用上没有限制
    public void test2(){
//        普通的方法
//        1. 调用静态成员
        name = "James";
        method1();

//        2. 调用非静态的成员
        age = 18;
        method2();
        System.out.println(this);
    }
}

解释在代码中!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未曾仰望的星空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值