让静态对象来维护你的数据
工作中希望将一些连续的对象数据保存在内存中,
常用的方法是创建一个集合类(Collections),最常用的是ArrayList或者他的继承类。
但是如果我们需要在多个对象中同时使用这个实例,就显得比较麻烦,
因为我们不可能将他在实例化一遍,
那么我们只能可以用它作为最初实例化此对象的一个属性来使用,是不是觉得很麻烦呢?
好,那我介绍一种将其作为一个静态对象的存储方式。
Example:http://files.cnblogs.com/wanghualiang/PersistentMemoryObject.rar
首先,创建一个对象同时创建此对象的静态实例:
public class PersistentObject
{
public static PersistentObject persistentObject = new PersistentObject();
}
创建一个ArrayList对象。
public ArrayList classes = new ArrayList();
建立操作集合的静态函数
public static void AddClass(ParameterClass subclass)
{
persistentObject.classes.Add(subclass);
}
public static void PrintClass()
{
foreach (ParameterClass subclass in persistentObject.classes)
{
PrintParameterClass(subclass);
}
}
public static ParameterClass GetClassByID(string ID)
{
foreach (ParameterClass subclass in persistentObject.classes)
{
if (subclass.ID.Equals(ID))
return subclass;
}
return null;
}
public static bool WriteClassByID(string ID, string Field1)
{
foreach (ParameterClass subclass in persistentObject.classes)
{
if (subclass.ID.Equals(ID))
{
lock(subclass)
subclass.Field1 = Field1;
PrintParameterClass(subclass);
return true;
}
}
return false;
}
public static void PrintParameterClass(ParameterClass pc)
{
Debug.Write(pc.ID+"\t");
Debug.Write(pc.Field1+"\t");
Debug.Write(pc.Filed2+"\t");
Debug.Write(pc.Field3+"\t");
Debug.Write("\n");
}
OK!我们的静态持久对象就建立起来了.
附表
public class ParameterClass
{
public string ID;
public string Field1;
public string Filed2;
public string Field3;
public ParameterClass(string ID)
{
//
// TODO: 在此处添加构造函数逻辑
//
this.ID = ID;
}
}
转载于:https://www.cnblogs.com/wanghualiang/archive/2005/08/18/217822.html
让静态对象来维护你的数据相关推荐
- 2020-12-14(全局/静态对象的构造函数和析构函数调用的时机以及地址)
一般的对象实例化在什么时候实例化的呢? 是不是在main函数运行到那里的时候,然后创建对象,会调用类里面的构造函数. 那当我们遇到全局/静态对象的时候,它是不是也是需要在main函数里面慢慢构造呢? ...
- Java构造器、静态对象、非静态对象等的初始化顺序
Java创建类对象时对于构造器,静态对象.非静态对象的初始化有一定的顺序,我简单归纳一下: class classes {public classes(String n) {System.out.pr ...
- C++构造与析构(18) - 静态对象(static object)何时销毁
C++的static关键字 static关键字可以用于修改局部变量,函数,类的数据成员以及对象.静态局部变量只初始化一次,然后在每次函数调用时都保持它的值.静态成员函数可以直接用类来调用,不需要创建对 ...
- Qt之Q_GLOBAL_STATIC创建全局静态对象
概述 所谓的全局静态对象,大多是在单例类中所见,之前写过一篇文章介绍如何实现一个单例类,在这里,这是最常见的方式来进行创建,需要自定义 static 类对象, 并进行手动初始化.而今天要说的是更简单的 ...
- oracle表和对象基础维护笔记
一 oracle表和对象基础维护笔记 1.1 常见概念 1.2 创建表 1.3 表常见字段 1.4 增加或删除字段 1.5 更新字段 1.6 重命名表 1.7 改变表存储表空间和存储参数 1.8 删除 ...
- 静态对象、全局对象与程序的运行机制
静态对象.全局对象与程序的运行机制 1. 在介绍静态对象.全局对象与程序的运行机制之间的关系之前,我们首先看一下atexit函数. atexit函数的声明为:int atexit( void ( ...
- 静态对象线程java_慢速多线程Java应用程序:这是由于访问静态对象引起的吗?...
首先,介绍- 我有一组类,它们从同一类Feature继承,但是彼此不同,因为它们每个都使用不同的信息进行计算.所以这是一个例子: public class FeatureA extends Featu ...
- 静态Web服务器-返回固定页面数据
1. 开发自己的静态Web服务器 实现步骤: 编写一个TCP服务端程序 获取浏览器发送的http请求报文数据 读取固定页面数据,把页面数据组装成HTTP响应报文数据发送给浏览器. HTTP响应报文数据 ...
- oracle数据定义语句,oracle(sql)基础篇系列(3)——数据维护语句、数据定义语句、伪列...
oracle(sql)基础篇系列(三)--数据维护语句.数据定义语句.伪列 DML语句 insert 向表中插入新的记录 --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 ...
最新文章
- C/C++ 中指针和引用的区别
- 无法激活安全认证服务
- python 全部缩进一行_Python(48)语言参考2:词法分析
- 跟我学 Java 8 新特性之 Stream 流(四)并行流
- 当数据中台遇见云原生,智领云看到企业数据转型新方向
- 查看linux cpu负载均衡,关于linux内核cpu进程的负载均衡
- 【高校联合主办| SCI、EI 快检索】物联网,机器学习,网络安全,通信技术,算法,微芯片等计算机多主题征稿!...
- CANape a2l文件的编辑教程
- 【裴礼文数学分析】例1.1.2
- 替代CATIA查看stp/step格式模型免费软件推荐
- 编译原理笔记05-语法分析自底向上
- pythonarray去除inf_python 中numpy快速去除nan, inf的方法
- Python编程实例03——对英文文本进行分词
- JS正则表达式常见用法实例详解
- 数据结构与算法之美笔记——基础篇(下):图、字符串匹配算法(BF 算法和 RK 算法、BM 算法和 KMP 算法 、Trie 树和 AC 自动机)
- Word VBA自动排版(1)-新建窗口,并且设置并列分布
- CZ880到手第一天测试,安装Windows11 To Go
- 修改dpr提高ECharts图表的清晰度
- Android 彩信发送
- 脑残定义,超级经典!