static关键字
在我们的方法和属性上都可以使用static关键字,
使用static属性:描述共享属性如 人的国家中国,当我们的属性定义了static关键字之后,那么此属性将不会保存在堆内存,会保存在全局数据区,所有的对象都可以访问该区的内容
总结:1.但是既然使用了共享属性了,代码就出现了一个问题,共享属性能通过一个对象修改吗?对于stsic的属性实际上将其称之为类属性,而其中所有的类属性都可以通过类名称直接调用,staic直接能通过类名称调用
2.访问staic属性都通过类名称,虽然对象可以修改但是属于不合法操作,所有的非staic的属性都必须在产生实例化之后才可以使用,所有的static属性不受实例化对象影响
3.选择:关于static属性与非static属性的定义选择:在定义类99%的情况不会考虑static属性的;
如果需要描述共享属性的概念,或者不希望受到实例化对象的控制时候,使用ststic;
使用static方法
1.使用ststic定义的属性可以通过类名称直接调用,方法也一样,不受实例化的影响
2.类中已经存在有static方法和非static方法,那么互相调用就存在限制
3.所有的static方法不允许调用非static的定义的属性与方法
4.所有的非static’方法允许访问ststic属性或者方法
使用ststic的目的:使用ststic的属性是共享的目的,但是使用ststic的方法目的只有一个:某些方法不希望受到类的限制,可以在没有实例化对象的时候进行执行
分析主方法:public static 返回值类型 方法名称 (参数列表){},写到类的时候没有使用static是避免限制,ststic方法是独立于类之外的使用原则
public:公共的,主方法起点,随意访问
static:执行java程序的是类名称,不受实例化
void:主方法是一切的起点,开始了就走
main:是系统方法名称
static的应有:ststic的关键是进行共享的操作,所有的这一基础上进行static做对象的统计。所有的产生新对象一定要使用构造方法,在构造方法中实现统计。
ststic的属性和方法不受实例化影响,可以由类名称直接调用