自学JAVA-static关键字

static关键字

1.静态属性(类属性)。与实例属性(对象属性)
    静态属性,只有一份,可以通过 类名.属性名/对象.属性名 来赋值和访问
    实例属性,每个对象都有一份,只能通过 对象.属性名 来赋值和访问
    
2.静态方法与实例方法(对象方法)
    静态方法中只能调用静态方法,不能访问实例属性
    实例方法中可以调用静态方法和实例方法,也可以访问静态属性和实例属性
    
3.补全method方法
    System.out.println(method(method(100.2,1.0),100));
    
静态属性
创建一个 Cat.java 类文件 内容如下:

public class Cat {

    // 下面的三个属性都叫对象属性或实例属性,使用的时候需要创建对象,new Cat() 才能进行赋值
    // String name = null;
    // int age = 0;
    // String color = null;

    String name = null;
    int age = 0;
    static String color = null;

}


测试文件中内容如下



public class Hello {
    public static void main(String[] args) {

        Cat cat1 = new Cat();
        cat1.name = "卢本伟";

        Cat cat2 = new Cat();
        cat2.name = "哈利波特";

        System.out.println(cat1.name); // 卢本伟
        System.out.println(cat2.name); // 哈利波特

        Cat.color = "白色";
        System.out.println(Cat.color); // 白色

        cat1.color = "黑色";
        System.out.println(cat2.color); // 黑色


        // 由此可见:类属性会跟着类走的,是独有一份,不管通过哪一个对象对它进行修改那么会影响所有的对象

    }
}
静态方法
创建一个 Cat.java 类文件 内容如下:
public class Cat {

    // 下面的三个属性都叫对象属性或实例属性,使用的时候需要创建对象,new Cat() 才能进行赋值
    // String name = null;
    // int age = 0;
    // String color = null;

    String name = null;
    int age = 0;
    static String color = null;

    void jiao() {
        System.out.println("喵~");
    }

    static void jiao_static() {
        System.out.println("喵~static");
    }

}


测试文件中内容



public class Hello {
    public static void main(String[] args) {

        Cat cat1 = new Cat();
        cat1.name = "卢本伟";

        Cat cat2 = new Cat();
        cat2.name = "哈利波特";

        System.out.println(cat1.name); // 卢本伟
        System.out.println(cat2.name); // 哈利波特

        Cat.color = "白色";
        System.out.println(Cat.color); // 白色

        cat1.color = "黑色";
        System.out.println(cat2.color); // 黑色


        // 由此可见:类属性会跟着类走的,是独有一份,不管通过哪一个对象对它进行修改那么会影响所有的对象


        cat1.jiao(); // 喵~ 对象方法只能通过对象去使用
        cat1.jiao_static(); // 喵~static

        Cat.jiao_static(); // 喵~static


    }
}
练习
System.out.println(method(method(100.2,1.0),100));




public class Hello {
    public static void main(String[] args) {

        System.out.println(method(method(100.2, 1.0), 100));

    }

    static double method(double a, double b) {
        return a + b;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值