结构和类有什么异同


Posted in 面试题 onJuly 16, 2012
类是引用类型,可以继承类、接口和被继承,有默认的构造函数,有析构函数,可以使用abstract和sealed,有protected修饰符,必须使用new初始化。
结构是值类型,只能继承接口,不能被继承,没有默认的构造函数,可以创建,没有析构函数,不可以用abstract和sealed,没有protected修饰符,可以不用new初始化。
如何选择使用结构还是类:
a)堆栈的空间有限,对于大量的逻辑的对象,创建类要比创建结构好一些
b)结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。在此情况下,结构的成本较低。
c)在表现抽象和多级别的对象层次时,类是最好的选择
d)大多数情况下该类型只是一些数据时,结构是最佳的选择

Tags in this post...

面试题 相关文章推荐
函数只定义了一次, 调用了一次, 但编译器提示非法重定义了-什么问题?
Oct 03 面试题
const char*, char const*, char*const的区别是什么
Jul 09 面试题
杭州SQL浙江浙大网新恩普软件有限公司
Jul 27 面试题
delegate与普通函数的区别
Jan 22 面试题
标记环网Toke Ring IEEE802.5
May 26 面试题
Linux如何命名文件--使用文件名时应注意
May 29 面试题
Linux开机引导的步骤是什么
Feb 26 面试题
do you have any Best Practice for testing
Jun 04 面试题
在浏览器端如何得到服务器端响应的XML数据
Nov 24 面试题
程序员经常用到的UNIX命令
Apr 13 面试题
J2EE中的容器都包括哪些
Aug 21 面试题
Delphi笔试题
Nov 14 面试题
托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
Sep 29 #面试题
.NET初级开发工程师面试题(包括Javascript)
Aug 22 #面试题
什么是Smart Navigation?
Jul 03 #面试题
.NET概念性的面试题
Feb 29 #面试题
什么是View State?
Jan 27 #面试题
面向对象概念面试题(.NET)
Nov 04 #面试题
.NET面试问题集
Dec 08 #面试题
You might like
php实现ping
2006/10/09 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
详谈php静态方法及普通方法的区别
2016/10/04 PHP
php批量删除操作代码分享
2017/02/26 PHP
Thinkphp 3.2框架使用Redis的方法详解
2019/10/24 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
基于Jquery的淡入淡出的特效基础练习
2010/12/13 Javascript
jQuery实现加入购物车飞入动画效果
2015/03/14 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
jquery实现的蓝色二级导航条效果代码
2015/08/24 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
2015/08/28 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
Bootstrap源码解读导航(6)
2016/12/23 Javascript
jquery.pager.js分页实现详解
2019/07/29 jQuery
原生js实现点击按钮复制内容到剪切板
2020/11/19 Javascript
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
Python中atexit模块的基本使用示例
2015/07/08 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
2019/06/10 Python
Django继承自带user表并重写的例子
2019/11/18 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
Python requests模块session代码实例
2020/04/14 Python
Java如何基于wsimport调用wcf接口
2020/06/17 Python
PyTorch实现重写/改写Dataset并载入Dataloader
2020/07/14 Python
python 装饰器的实际作用有哪些
2020/09/07 Python
如何利用python发送邮件
2020/09/26 Python
Python离线安装各种库及pip的方法
2020/11/28 Python
sklearn中的交叉验证的实现(Cross-Validation)
2021/02/22 Python
英国最大的手表网站:The Watch Hut
2017/03/31 全球购物
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
英国领先的独立时装店:Van Mildert
2019/10/28 全球购物
建筑工地大门标语
2014/06/18 职场文书
2015年医药代表工作总结
2015/04/25 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript
总结Python连接CS2000的详细步骤
2021/06/23 Python
「天才王子的赤字国家重生术」妮妮姆·拉雷粘土人开订
2022/03/21 日漫
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫