static应用案例

☆static的属性和方法不受到一个类的实例化的对象限制,可以由类名称直接调用。

static应用属性的最大功能是进行共享的操作,所以在这一基础上可以使用static做一个对象产生的计数统计。

所有新对象的产生一定要使用构造方法完成,所以可以在构造方法中实现统计。


范例:对象产生个数统计

class Person{
	private static int count=0;
	public Person() {
	System.out.println("对象个数:"+ ++count);
	}
}
public class TestDemo {
public static void main(String args[]) {

	new Person();new Person();new Person();
}}
 

在此程序基础之上做一个更加简单的扩充,假设说,现在Person类中有一个name属性以及两个构造方法

其中以一个构造方法可以接受外部传递的name属性内容,另外一个构造方法是无参构造,一旦使用使用

了无参构造就希望可以自动的为类中的name属性做一个自动赋值,例如“NONAME-1”.

那么此时就可以继续使用static的属性控制。 

class Person{
	private String name;
	private static int count=0;//保存对象产生个数
	public Person() {//需要由程序自己来设置内容
		this("NONAME -"+count++);//调用本类有参构造
	
	}
	public Person(String name) {//由外部传递属性内容
		this.name=name;
	}
	public String getName() {
		return this.name;
	}
}
public class TestDemo {
public static void main(String args[]) {

	System.out.println(new Person().getName());
	System.out.println(new Person("NCC").getName());
	System.out.println(new Person().getName());
}}
 

以后也会见到这种自动为属性命名的操作。

总结:


1.static 定义的属性和方法并不是你在进行类类设计时的首要选择

2.static的属性和方法不受到一个类的实例化的对象限制,可以由类名称直接调用。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值