Java中的static关键字

在编写代码的时候,经常看到static关键字的,那就是main方法了,至于为什么main方法需要用static来修饰,相信你看了下文之后会明白

要想使用一个类的方法或者访问类的公开的变量,通常来说是先new一个对象,然后通过对象去调用或者访问变量,而使用static关键字,可以在没有创建对象的时候来使用对应的方法或者变量,也就是这样

public class test {
    String name = "小明";
    public void hello(){
        System.out.println("hello");
    }
    public static void main(String[] args) {
      	//没有被static修饰的,必须new对象才能访问
        test t = new test();
        System.out.println(t.name);
        t.hello();
      	//有static修饰的,直接通过类名来访问。
        System.out.println(test2.name);
        test2.hello2();
    }
}

class test2{
    static String name = "小李";
    public static void hello2(){
        System.out.println("hello2");
    }
}

这也就是说被static修饰的变量、方法,是属于类的。

1.static修饰的方法

被static修饰的方法,称为静态方法,不需要new对象来调用,因为没有经过实例化,所以在方法内也就不存在this的指向,也就不能在static的方法内是使用没有被static修饰的变量或者方法,但是可以在非静态方法内去使用静态的变量或者方法,因为对象是在类加载完成之后new出来的,所以可以访问类拥有。

现在就可以来说明被static修饰的main方法了:在执行main方法的时候,是最开始的,也就是没有new出任何对象,所以应该让他挂载到类上,这样才能够直接调用。

2.static修饰的变量

静态变量和非静态的变量最大的区别就是:静态变量可以被所有的对象共享,也就是可以被各个对象访问到,只会在类加载的时候初始化一次;而非静态变量只能被对象所拥有,各个对象之间的变量相互不影响

3.注意:

1.使用static修饰的变量、方法,并不能改变他们的访问权限,也就是对于一个private的方法,即便是给加上static修饰,也不能在别的类中直接访问到。

2.局部变量不能使用static修饰

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值