webdn
 
  首页     免费截图     VIP会员区     广告Banner     技术文档     网站模板  
网站截图,网站每日新 !
虚拟主机
网页模板

首页 >> WebDN 文档>> java入门 >> 第 9页 >>和大家谈谈static 的基本知识

 

和大家谈谈static 的基本知识

【摘 要】 static 关键字声明一个属性、方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”。

static 的基本知识:
1>: static 关键字声明一个属性、方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”。
2>: 如果访问控制权限允许,可以不必创建该类对象而直接使用类名加"."调用,无论类中产生多少个类的实例对象,静态变量的值都是一样
3>: static 不可用于构造器
4>: 也可以通过类的实例对象访问

扩展知识:
a>: 子类继续父类的静态变量,不管是子类对象调用静态变量的hashCode()还是父类调用,产生的哈希码都是一样的
b>: 静态方法中只能调用静态变量或静态方法原因:
   因为非静态方法只能通过对象的形式调用,而静态方法在使用前,不需创建任何对象就可以调用。
c>: this和super不能存在于静态方法的原因:
   因为this代表的是当前对象,而静态方法是不需要创建任何对象就可以调用到的,因此,this不适应于静态方法。super也是同样的道理。。
d>: main方法为什么要使用static关键字
   这是因为,JVM在使用前<加载这个类>,不需创建任何实例对象就可以调用
e>: main方法的public关键字目的
   JVM在调用该代码时,因为是在不同包中,所以必须是public的

附>: 相同对象只在内存占用同一份空间
class ObjectA {
 String str = "mjs";
}

public class ObjectApprehend {
 String str1 = "mjs";
 public static void main(String[] args) {
  ObjectA a = new ObjectA();
  ObjectApprehend oa = new ObjectApprehend();
  if(a.str.equals(oa.str1)) {
   System.out.println("两个对象占用相同的内存空间");
  }
 }
}



电话咨询:010-60520722 QQ咨询:3792656   |   583696287   |   66733350 关于WebDN  |  站点地图  |  联系我们  |  支付方式  |  友情链接
© 2004-2008 WebDN.com 版权所有. 沪ICP备05040479号