java中的static关键字

本文详细介绍了Java中的static关键字,包括其用于修饰方法和成员变量的特性。static方法无法使用this和super关键字,并且不能调用非静态方法。同时,static方法在类加载时即存在,可以通过类名直接调用。关于静态方法的重写,文章指出静态方法不具备子类重写父类方法的特性。此外,static还可以修饰内部类,允许直接创建内部类对象而无需先创建外部类对象。关键词涵盖:静态方法、静态变量、类加载、内部类和方法重写。
//从头开始学java
```## 第一章static关键字

**  **static修饰方法,该方法不可以使用this,super等关键字,因为这些关键字实际上指的是具体的对象的内存地址,静态方法可以被类名.方法名调用,静态方法随着类的加载而加载不依附于任何对象.
并且静态方法中也不能调用非静态方法,因为非静态方法需要创建对象使用.
关于静态方法的重写问题:
静态方法不可以被重写,子类和父类创建相同方法时,不具有重写关系,代码eg:**
**

```java
public class Person {
    private String name;
    public static void printInfo(){
        System.out.println("person的方法");
    }
}
public class Man extends Person{

    public static void printInfo(){

        System.out.println("Man子类的方法");
    }

}
public class Test {
    public static void main(String[] args) {
        Person man = new Man();
        man.printInfo();
        Man person = new Man();
        person.printInfo();
    }
}

代码输出:
person的方法
Man子类的方法

子类方法上加上@Override就会报错

static修饰成员变量,表示该变量是共享的.
static修饰方法, 该方法随着类的加载而加载,通过类名.方法名直接调用.也可以通过静态导包,然后直接通过方法名调用.
static修饰类.static可以修饰内部类.该类通过调用时l,不需要new子类了.直接使用Outer.Inner outer = new Outer.Inner();创建内部类对象.
– 静态内部类能直接访问外部类的静态成员,不能直接访问外部类的实例成员(外部类的对象访问)。
– 静态内部类里面可以定义静态成员,其他内部类不可以。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值