面试题总结(PS:只是我遇到的那些面试题,并不是经典面试题)
一、类和结构的区别,分别有什么应用。(参考:https://blog.csdn.net/yikeshu19900128/article/details/40400479)
1)类是引用类型,数据存放在堆上,指向的地址存在栈上。结构是值类型,数据存在栈上。
2)类可以继承,能继承另一个类或接口,也可以被继承。结构不能继承,不能继承另一个结构或类,也不能被继承,但是可以继承接口。
3)类可以在声明时初始化,结构不能在声明时初始化。
4)在类中,一旦我们编写了带参数构造函数,默认构造函数就不存在了。当我们要调用不带参数的构造函数来初始化对象时,我们必须再自己编写一个不带参数的构造函数。但是在结构中,始终存在一个不带参数的默认构造函数,并且,这个构造函数是不可替代的,不能重写,也不能覆盖,在结构中,我们只能编写带参数的构造函数,不能编写不带参数的构造函数
5)析构函数:类有析构函数,但是结构没有析构函数
6)关键字:在类中可以使用但是在结构中限制使用的关键字有:abstract、sealed、protected;Static关键字可以用在类名前面用来声明静态类,但是不能用在struct前面,不存在静态结构
7)类用new来实例化对象,分配内存,需要使用new返回地址及分配空间,而结构用new是初始化,结构是值类型,声明时就已经分配内存了
结构和类的适用场合分析:(参考:https://blog.csdn.net/Iqingshuifurong/article/details/53129536)
1、当堆栈的空间很有限,且有大量的逻辑对象时,创建类要比创建结构好一些;
2、对于点、矩形和颜色这样的轻量对象,假如要声明一个含有许多个颜色对象的数组,则CLR需要为每个对象分配内存,在这种情况下,使用结构的成本较低;
3、在表现抽象和多级别的对象层次时,类是最好的选择,因为结构不支持继承。
4、大多数情况下,目标类型只是含有一些数据,或者以数据为主。
二、在项目中直接使用sql语句和用存储过程查询的区别是什么(参考:https://www.cnblogs.com/binyue/p/6442310.html)
三、网站的优化有哪些方法?(从服务端和客户端两个方面说明)(参考:https://www.zhihu.com/question/21658448)
【这个如果知道的希望可以在评论区分享你的答案,谢谢】
<script type="text/javascript">
var a = '12.3';
a = parseInt(a);//a=12
var b = 12.6;
var c = a + b;//c=24.6
alert(typeof (c));//number类型
alert(parseInt(c));//
</script>
<script type="text/javascript">
var a = '12.3';
a = parseFloat(a);
var b = 12.6;
var c = a + b;
alert(c);//24.9
alert(typeof (c));//number类型
alert(c.toFixed());//25 在js中四舍五入的函数 tofixed(n) , n为要保留的小数位数。n为0~20,当n超过20的时候,js会出错。
</script>
最新文章
- blog (后续更新)
- CF 370B Berland Bingo
- 【分享】分享一个压缩 PNG 的网站 TinyPNG
- HDU1850 Being a Good Boy in Spring Festival(博弈)
- Intellij IDEA @Override 标红
- (转).net Application.DoEvents()的作用
- Spring AOP AspectJ Pointcut 表达式例子
- Viewpager实现网络图片的轮播
- 将1、2、3、……、n这n个连续自然数分成g组,使每组的和相等。g组中个数最多的一组有几个?
- Python 浅谈注释的重要性
- 2.4配置的热更新「深入浅出ASP.NET Core系列」
- 关于ESB(企业服务总线)的学习笔记
- MongoDB之 分组查询
- Wannafly Winter Camp 2019.Day 8 div1 I.岸边露伴的人生经验(FWT)
- 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字
- tensorflow object detection
- 三分钟分布式CAP理论
- HTML、CSS、JS 样式 (未整理)
- LeetCode题解之Single Number
- javascript ActiveXObject FileSystemObject 对象,创建、复制、删除、读取文件等