stctic关键字的描述

凡事用static修饰的内容,具有以下几个共性:

  • 1、与类有关,与对象无关;
  • 2、一定会在加载期有特殊动作;
public class Student {
/*
 * 如果属性没有static修饰,那么我们称之为“对象属性”;
 * 如果属性有static修饰,那么我们称之为“静态属性” 或 “类属性”。
 * 
 * static修饰的属性在内存上没有存放在每个对象身上,所以不是一个
 * 对象一个属性!而是全类共享一个!!!存放在数据段的静态区当中,
 * 而且只有一个。
 * 
 * static修饰符的属性由于与对象无关,所以可以直接使用类名进行访问,
 * 不用产生对象。
 * static修饰的属性是在加载期的时候产生,并完成初始化。
 * 
 * 使用结论:
 * 1、只有全类(不管多少个对象)共享唯一值的属性,我们才能定义成
 *   static修饰的;
 *   
 * 2、常量属性不用动脑袋,直接定义为static的;
 *    由于常量值是不可更改,每个对象的这个值都是一样的,没有必要
 *    在每个对象身上存储一份,设计为static,全类共享即可;
 *    
 * 3、static修饰的属性可以直接使用"类名."的方式访问,当然也可以用
 *    "对象."的方式;但是非static修饰的属性,只能用"对象."的方式
 *    访问;
 * 
 * 
 */

```java
public static String name;
	
	public int age;
	
	public static final int FEE = 19200;
	
	/*
	 * 构造方法不能使用static关键字进行修饰
	 * 构造方式的作用是产生对象,所以与对象密切相关,
	 * 不符合static的特性。
	 */
	

public Student() {
		
	}
	
	
	/*
	 * 1、用static修饰的方法可以直接用"类名."的方式访问,当然也可以用
	 *    "对象."的方式访问;
	 * 2、静态方法不能访问本类的非静态属性,当然也不能调用本类的其他非静态方法;
	 *    非静态方法可以访问本类的静态属性,或调用本类的静态方法;
	 * 3、在加载期,会首先加载一个类的静态方法,然后再加载非静态方法;
	 * 4、通常我们只把工具类的工具方法设计为static的。
	 *    什么是工具类的工具方法呢?
	 *    该方法的调用与对象无关,或是不改变执行对象的状态属性。
	 */
	

public void test() {

	}
	
	public static void study() {
		
	}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值