此内容是笔记与个人理解如有不足见谅,且是针对java这个语言的哦
首先是static静态修饰符,经过这个修饰的类成员(方法和属性)可以被同一个类下的多个对象共享资源,被称为静态成员(静态方法和静态属性)。
而且使用被static修饰的类成员时不需要new一个对象,可以在main函数里面或者其他静态方法里面直接采用【类名.静态成员】这样的形势。
在被static修饰的方法里面可以直接调用访问静态成员但是不可以直接访问非静态成员,一般通过new一个对象访问相关非静态成员。
值得注意的是在静态方法里面是不能使用this和super关键字的。
当然非静态的方法是可以访问静态成员的。
我们一般定义一个静态成员格式如下
访问修饰符(例如public)static 类型 属性名;(这里是静态属性)
访问修饰符(例如public)static 返回类型 方法名(){ 【这里可以写代码】};(这里是静态方法)
然后静态成员也是遵循访问修饰符的基本条件的。
关于静态方法可以被同一个类下的多个对象共享资源,按照我的理解是这样的
因为静态成员是在类加载的时候就执行的,所以会在堆里生成对应的空间,当我们new一个对象的时候非静态成员都是临时生成空间而静态成员只要指向之前生成的空间就可以。(以上个人理解)
ok,上面就是我对于static的笔记和理解
===================================
接下来是main()方法了。
首先main方法我们并不陌生,平时天天用。
main方法是在java的虚拟机调用的。
java虚拟机要调用main方法且不用创建类对象,所以main也是被static所修饰的,且使用public访问修饰符。
然后我们main(String[] args)平时是这么写的吧。
这个String[] args是用来接收参数的,这个不多说我还没有完全弄懂。
最后因为main方式是一个静态方法所以也遵守静态方法的规则不能直接调用非静态成员需要new一个对象。
以上全部,之后可能会补充,如有错误麻烦指出(*^_^*)