`
phoenix007
  • 浏览: 431071 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

静态方法和静态字段

阅读更多
package test;

public class StaticTest {

	public static void main(String[] args) {
		// fill the staff array with three Employee objects
		Employee[] staff = new Employee[3];
		
		staff[0] = new Employee("Tom",40000);
		staff[1] = new Employee("Dick",50000);
		staff[2] = new Employee("Harry",60000);
		
		// print out information about all employee objects
		for (int  i = 0; i < staff.length; i++)
		{
			Employee e = staff[i];
			e.setId();
			System.out.println("name=" + e.getName() + ", id=" + e.getId() +
                                                        ", salary=" + e.getSalary());			         
		}
		
		int n = Employee.getNextId();
		System.out.println("Next available id=" + n);

	}
}

class Employee
{
	private String name;
	private double salary;
	private int id;
      //静态字段属于这个类,而不属于单个的对象。类的对象共享这个静态字段。
	private static int nextId = 1;
	
	public Employee(String n,double s){
		name = n;
		salary =s;
		id = 0;	
	}
	public String getName()
	{
		return name;
	}
	public void setName(String name){
		this.name = name;
	}
	public double getSalary(){
		return salary;
	}
	public void setSalary(double salary){
		this.salary = salary;
	}
	public int getId(){
		return id;
	}
	public void setId()
	{
		// set id to next avilable id
		id = nextId;
		nextId++;
	}
      //静态方法是不向对象施加操作的方法,不能访问实例字段,只能访问类自身中的静态字段。
	public static int getNextId()
	{
		return nextId; //return static field
	}
	
	public static void main(String[] args){
		Employee e = new Employee("Harry",50000);
		System.out.println(e.getName() + "\t" + e.getSalary());
	}
}

  运行结果:

name=Tom, id=1, salary=40000.0
name=Dick, id=2, salary=50000.0
name=Harry, id=3, salary=60000.0
Next available id=4

 

分享到:
评论

相关推荐

    java 静态非静态 字段方法 子类父类构造_初始化顺序!

    java 静态_非静态 字段_方法_代码块 子类父类构造_初始化顺序! 三个class 让你清清楚楚 第一个class java代码如下: package initialOrder; class Parent { // 静态变量 public static String p_StaticField...

    java编程思想-初始化与清理

    java编程思想-初始化与清理了解this之后,你就能更全面地理解“静态...Java中禁止使用全局函数,但你在类中置入静态方法就可以访问其它静态方法和静态字段。 有些人认为静态方法不是“面向对象”的,因为它们的确具

    c# 类的静态字段操作

    c#语言现今的应用十分广泛,本例是其在类对象中对静态成员进行操作的一个实例

    c#静态方法和非静态方法详细介绍

    C#的类中可以包含两种方法:静态方法和非静态方法。 使用了static 修饰符的方法为静态方法,反之则是非静态方法。 静态方法是一种 特殊的成员方法,它不属于类的某一个具体的实例,而是属于类本身。所以对静态方法不...

    Java 静态方法/变量,非静态方法/变量的区别

    大家应该都明白静态方法/字段比普通方法/字段的写法要多一个static关键字,简单写下他们的写法吧,了解的可以直接略过 class Test{ // 静态变量 public static int id = 1; // 普通变量 public int usualId = 2;...

    String字符串注入类静态字段

    简单方法将String字符串注入类的静态字段

    C# 控制台入门 修饰符 构造函数 虚方法 静态字段 接口 抽象类 循环 适合入门

    一个简短的控制台程序,使用了构造函数,虚方法 静态类,静态字段,接口,抽象类,继承,适合刚入门的人看

    静态建对象调用成员对象的成员字段.rar

    静态建对象调用成员对象的成员字段.rar

    非静态字段,方法或属性需要对象引用

    您必须先学习什么是类型以及什么是实例,才能继续开发。 这是您的问题。方法(非静态)方法可用于实例。 静态方法没有对实例的引用(作为“ this”隐式传递给所有实例方法),因此...的语法

    020509_【第5章:面向对象基础】_this关键字与static关键字

    本次内容:1、020509_【第5章:面向对象基础】_this关键字;2、020509_【第5章:面向对象基础】_static关键字

    .net中数据表的静态类方法

    针对SQL数据操作,定义数据表为静态类和公共属性,实现通用的增删改查的操作,同时定义了自增字段及键值字段,自动实现更新或添加。十分方便的建立一个数据表的对象,使数据操作变得简单。

    C#静态static的用法实例分析

    其次,它防止在类的内部声明任何实例字段或方法。 静态类的主要特性: 1:仅包含静态成员。 2:无法实例化。 3:静态类的本质,是一个抽象的密封类,所以不能被继承,也不能被实例化。 4:不能包含实例构造函数。 5...

    织梦联动筛选伪静态[单链接形式].zip

    网站用的是静态,筛选用的是伪静态,筛选的伪静态地址以字段和键值呈现,让筛选URL与静态保持一致。 如: 静态栏目页 http://www.xxx.com/juji/ 静态栏目页分页 http://www.xxx.com/juji/list_1_2.html 伪静态筛选页...

    php静态化的类 实现静态页面

    php静态化的类,可以实现静态页面,可是实现对数据库更新,不过要根据你的具体需要做一些修改,如表和字段名及文件目录等。

    静态数据结构与动态数据结构.pdf

    静态数据结构与动态数据结构 静态数据结构与动态数据结构 数据结构:计算机中组织和存储数据的⼀种特殊⽅式,以便能够有效地访问和修改数据,数据结构是数据值的集 合,它们之间的关系,以及可以应⽤于数据的函数或...

    Android实验六.doc

    【实验要求】 1、 练习使用静态方法和动态方法注册广播接收器 2、 练习发送广播消息的方法 3、 完成实验报告 二、实验内容 1、 新建 Android 应用程序项目 BroadcastTest; 2、 业务逻辑代码与界面布局文件如下: 1)...

    PHP生成静态页面小程序 v1.1.zip

    前几天发表一个有关PHP生成静态HTML页面小程序,有朋友私下说能不能整理一下,把相关PHP生成静态HTML,原理性强的都写出来,适合PHP新手用到的一些方法,这里我在之前的哪个版本上面又进行了完善,把PHP新手朋友要求...

    c#只读字段和常量的区别,以及静态构造函数的使用实例

    namespace ConsoleApplication1{ ///  /// 作者:it小金 /// 功能:c#只读字段和常量的区别,以及静态构造函数的使用 ///  class Program { static void Main(string[] args) { Console.WriteLi

    PHP生成静态页面小程序 v1.1

    前几天发表一个有关PHP生成静态HTML页面小程序,有朋友私下说能不能整理一下,把相关PHP生成静态HTML,原理性强的都写出来,适合PHP新手用到的一些方法,这里我在之前的哪个版本上面又进行了完善,把PHP新手朋友要求...

Global site tag (gtag.js) - Google Analytics