结构和类有什么异同


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

Tags in this post...

面试题 相关文章推荐
AOP的定义以及作用
Sep 08 面试题
如何在Cookie里面保存Unicode和国际化字符
May 25 面试题
华为的Java面试题
Mar 07 面试题
描述内存分配方式以及它们的区别
Oct 15 面试题
什么是URL
Dec 13 面试题
linux面试题参考答案(11)
Nov 26 面试题
介绍一下Linux中的链接
Jun 05 面试题
一套比较完整的软件测试人员面试题
May 13 面试题
当x.equals(y)等于true时,x.hashCode()与y.hashCode()可以不相等,这句话对不对
May 02 面试题
Java中的异常处理机制的简单原理和应用
Apr 27 面试题
Hibernate持久层技术
Dec 16 面试题
Delphi CS笔试题
Jan 04 面试题
托管代码(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
世界第一个无线广播电台 KDKA
2021/03/01 无线电
php下尝试使用GraphicsMagick的缩略图功能
2011/01/01 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
php实现等比例压缩图片
2018/07/26 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
js打印纸函数代码(递归)
2010/06/18 Javascript
jQuery setTimeout传递字符串参数报错的解决方法
2014/06/09 Javascript
JavaScript的代码编写格式规范指南
2015/12/07 Javascript
原生js实现数字字母混合验证码的简单实例
2015/12/10 Javascript
jquery日历插件datepicker用法分析
2016/01/22 Javascript
jQuery实现调整表格单列顺序完整实例
2016/06/20 Javascript
jquery仿京东商品放大浏览页面
2017/06/06 jQuery
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
完美解决axios跨域请求出错的问题
2018/02/05 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
一起写一个即插即用的Vue Loading插件实现
2019/10/31 Javascript
使用Vue.set()方法实现响应式修改数组数据步骤
2019/11/09 Javascript
vue递归获取父元素的元素实例
2020/08/07 Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
2020/08/19 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
python中base64加密解密方法实例分析
2015/05/16 Python
解读Python中degrees()方法的使用
2015/05/18 Python
python去除空格和换行符的实现方法(推荐)
2017/01/04 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
2020/04/22 Python
python 爬取小说并下载的示例
2020/12/07 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
纯CSS3实现绘制各种图形实现代码详细整理
2012/12/26 HTML / CSS
利用HTML5+css3+jquery+weui实现仿微信聊天界面功能
2018/01/08 HTML / CSS
Spartoo芬兰:欧洲最大的网上鞋店
2016/08/28 全球购物
手工制作的男士奢华英国鞋和服装之家:Goodwin Smith
2019/06/21 全球购物
数控技术专科生自我评价
2014/01/08 职场文书
董事长秘书职责
2014/01/31 职场文书
七年级历史教学反思
2014/02/05 职场文书
《浅水洼里的小鱼》听课反思
2014/02/28 职场文书
外国人聘用意向书
2014/04/01 职场文书