广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C#实例化和静态类对象调用对比
  • 837
分享到

C#实例化和静态类对象调用对比

2024-04-02 19:04:59 837人浏览 八月长安
摘要

目录1、对比效果2、实例化代码3、静态类代码前言: 在编程时,什么时候用实例化对象,什么时候用静态类对象,这个值得我们思考,它们之间所占的内存和生命周期又是如何,框架本身的回收机制是

前言:

编程时,什么时候用实例化对象,什么时候用静态类对象,这个值得我们思考,它们之间所占的内存和生命周期又是如何,框架本身的回收机制是什么

1、对比效果

 实例化对象不断调用多少次,都会重新初始化值调用,说明实例化对象的生命周期是调用完成后就结束

静态类对象,静态类下的静态成员会一直占用在内存且只实例化一次,说明静态类成员的生命周期是从调用到程序结束或机制回收

场景使用:

  • 1)静态类或成员:数据库连接字符串,可以定义为静态,调用和获取比较频繁
  • 2)实例化:登录操作,一般登录操作不会太频繁

【小5聊】C#基础之实例化和静态类对象调用对比_生命周期

【小5聊】C#基础之实例化和静态类对象调用对比_c#_02

  • 重新启动对应的IIS站点

在不停的刷新某一个页面时,内存是按规律的0.1MB增加 ,刷新到一定次数后,内存没有明显的增加,甚至是不变,下图的.net core Host进程有两个,是指两个站点,且有被外部或内部在调用,否则是不显示状态

【小5聊】C#基础之实例化和静态类对象调用对比_静态类_03

【小5聊】C#基础之实例化和静态类对象调用对比_静态类_04

2、实例化代码

public string init = "实例化:hello";
public bool flag = false;
public int num = 0;
public void Test(string one)
{
    string test = "";

    if (!flag)
    {
        flag = true;

        num += 1;
        test = "【首次输出】" + init + one + num;
    }
    else
    {
        num += 1;
        test = init + one + num;

    }

    LmyLogHelper.Debug(test);
}

3、静态类代码

public static string init = "静态式:hello";
public static bool flag = false;
public static int num = 0;
public static void Test(string one)
{
    string test = "";

    if (!flag)
    {
        flag = true;

        num += 1;
        test = "【首次输出】" + init + one + num;
    }
    else
    {
        num += 1;
        test = init + one + num;

    }

    LmyLogHelper.Debug(test);
}

到此这篇关于C#实例化和静态类对象调用对比的文章就介绍到这了,更多相关C#实例化和静态类内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C#实例化和静态类对象调用对比

本文链接: https://www.lsjlt.com/news/146642.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#实例化和静态类对象调用对比
    目录1、对比效果2、实例化代码3、静态类代码前言: 在编程时,什么时候用实例化对象,什么时候用静态类对象,这个值得我们思考,它们之间所占的内存和生命周期又是如何,框架本身的回收机制是...
    99+
    2022-11-13
  • C#实例化和静态类对象怎么调用
    这篇文章主要介绍了C#实例化和静态类对象怎么调用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#实例化和静态类对象怎么调用文章都会有所收获,下面我们一起来看看吧。1、对比效果 实例化对象不断调用多少...
    99+
    2023-06-30
  • C++类的对象作类成员调用构造、析构函数及静态成员实例分析
    这篇文章主要介绍了C++类的对象作类成员调用构造、析构函数及静态成员实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++类的对象作类成员调用构造、析构函数及静态成员实例分析文章都会有所收获,下面我们一起...
    99+
    2023-06-30
  • java静态和动态绑定的实例对比分析
    这篇文章主要介绍了java静态和动态绑定的实例对比分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java静态和动态绑定的实例对比分析文章都会有所收获,下面我们一起来看看吧。不同绑定的比较静态绑定发生在编译期...
    99+
    2023-06-30
  • Spring使用@Autowired注解静态实例对象方式
    目录Spring @Autowired注解静态实例对象问题原因解决方案方式一方式二方式三方式四总结@Autowired注解和静态方法一、业务场景二、原理剖析三、解决方法1、将@Aut...
    99+
    2022-11-12
  • C++分析类的对象作类成员调用构造与析构函数及静态成员
    目录类对象作为成员静态成员定义和分类静态成员变量静态成员函数总结类对象作为成员 C++类中的成员可以是另一个类的对象,我们称该成员为 对象成员 例如: class Phone {} ...
    99+
    2022-11-13
  • C++函数指针+对象指针+this指针+指向类静态和非静态成员的指针
    目录1、指向函数的指针2、对象指针3、this指针4、指向类的非静态成员的指针5、指向类的静态成员的指针 1、指向函数的指针 函数的代码在内存中的首地址,是由函数名表示的,也就是说函...
    99+
    2022-11-13
  • C++函数指针,对象指针,this指针,指向类静态怎么用
    这篇文章主要介绍了C++函数指针,对象指针,this指针,指向类静态怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++函数指针,对象指针,this指针,指向类静态怎么用文章都会有所收获,下面我们一起来看...
    99+
    2023-06-29
  • Java 超详细讲解类的定义方式和对象的实例化
    目录1.面对对象的初步认识1.1什么是面向对象1.2面向对象与面向过程2.类的定义与使用2.1简单认识类2.2 类的定义格式3.类的实例化3.1什么是实例化?3.2重点笔记总结1.面...
    99+
    2022-11-13
  • C++单例模式为何要实例化一个对象不全部使用static
    C++的单例模式为什么不直接全部使用static,而是非要实例化一个对象? 通过getInstance()函数获取单例对象,这种模式的关键之处不是在于强迫你用函数来获取对象。关键之处...
    99+
    2022-11-13
  • 怎么在接口回调中的使用接口对象的实例化
    本篇文章为大家展示了怎么在接口回调中的使用接口对象的实例化,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。接口回调:可以把实现某一接口类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调...
    99+
    2023-05-31
    接口 对象 实例化
  • C++单例模式实例化一个对象不全部使用static的原因是什么
    今天小编给大家分享一下C++单例模式实例化一个对象不全部使用static的原因是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2023-06-30
  • 使用PHP和Linux构建高性能的对象实例化系统?
    在现代的Web开发中,高性能的对象实例化系统是至关重要的。PHP作为一门流行的Web编程语言,也需要高效的对象实例化系统来支持大规模的Web应用程序。在本文中,我们将介绍如何使用PHP和Linux构建高性能的对象实例化系统。 一、什么是对...
    99+
    2023-10-17
    linux npm 对象
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作