zoukankan      html  css  js  c++  java
  • c#中struct和class的区别

    今天面试问到了这个问题,居然在默认访问权限这个细节上答错了,真想给自己一块板砖好好拍一把,nnd,看来对于基础知识的掌握还是不够牢固,希望别因为这个问题导致被pass掉了。。。

    总结区别如下:

    1.struct 是值类型,class是对象类型

    2.struct 不能被继承,class可以被继承

    3.struct 默认的访问权限是public,而class默认的访问权限是private.

    4.struct不能由程序员申明构造函数,即使是默认(不带参数)的构造函数,同样也不能有析构的处理部分。这是因为Struct的构造函数是由编译器自动生成的。并且Struct的用途是那些描述轻量级的对象,例如Line,Point等,并且效率比较高。

    5.struct的new和class的new是不同的。struct的new就是执行一下构造函数创建一个新实例再对所有的字段进行Copy。而class则是在堆上分配一块内存然后再执行构造函数,struct的内存并不是在new的时候分配的,而是在定义的时候分配

  • 相关阅读:
    Filter过滤器
    jsp-JSTL表达式
    jsp-EL表达式
    JSP概述
    servlet编码问题
    微信开放平台-踩坑1
    Supervisor的安装以及使用
    laravel-mix的安装
    Laravel框架中打印sql
    Laravel 5.7 使用 PHP artisan migrate 的问题
  • 原文地址:https://www.cnblogs.com/jiaruistone/p/1617342.html
Copyright © 2011-2022 走看看