A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© syusouki 中级黑马   /  2015-9-30 19:09  /  128 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.如果Student类中有一个属性:schoolName,此属性需要被赋值为"传智播客-北京校区"; 并且不能修改。                       
2.Java中为我们提供了一种机制,可以避免每个对象都存储相同的变量值,这种机制就是:static(静态的、全局的)                       
3.static可以修饰:                       
  1).成员变量:表示"静态变量(全局变量)",存储在"方法区--静态存储区",只有一个存储空间,被多个对象共享;                       
  2).成员方法:表示"静态方法",存储在"方法区--静态存储区",只有一个存储空间,被多个对象共享;                       
4.被修饰为static的成员(成员变量,成员方法):                       
  1).可以通过"对象名"访问;                       
  2).可以通过"类名"访问;因为"静态成员"的存储空间,是在:第一次使用这个类时(可能还没有产出此类的对象),就会被立即分配存储空间。                       
                       
5.静态变量和成员变量的区别:                       
1.所属不同                       
        1).静态变量属于类,所以也称为为类变量               
        2).成员变量属于对象,所以也称为实例变量(对象变量)               
2.内存中位置不同                       
        1).静态变量存储于方法区的静态区               
        2).成员变量存储于堆内存               
3.内存出现时间不同                       
        1).静态变量随着类的加载而加载,随着类的消失而消失               
        2).成员变量随着对象的创建而存在,随着对象的消失而消失               
4.调用不同                       
        1).静态变量可以通过类名调用,也可以通过对象调用               
        2).成员变量只能通过对象名调用               
                       
static关键字的特点:                       
  1.随着类的加载而加载:                       
  2.优先于对象存在:                       
  3.被类的所有对象共享:这也是我们判断是否使用静态关键字的条件                       
  4.可以通过类名调用:                       
                       
                       
注意事项:                       
  1.在静态方法中是没有this关键字的;因为:"静态方法"会先于对象存在,而this存储的是"对象"的引用                       
  2.静态方法只能访问静态的成员变量和静态的成员方法;                       
    1).静态的只能访问静态的;                       
    2).普通成员方法:可以访问静态的,也可以访问普通的;                       
                       

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马