interview 01-阿里云开发者社区

开发者社区> 开发与运维> 正文

interview 01

简介: 1.inline ,block,inline-block区别 替换元素 :几乎所有的可替换元素都是行内元素,例如<img>、<input>等。 替换元素一般有内在尺寸,所以具有width和height,可以设定。例如你不指定img的width和height时,就按其内在尺寸显示,也就是图片被保存的时候的宽度和高度。 对于表单元素,浏览器也有默认的样式,包括宽度和高度。

1.inline ,block,inline-block区别

替换元素 :几乎所有的可替换元素都是行内元素,例如<img>、<input>等。

替换元素一般有内在尺寸,所以具有width和height,可以设定。例如你不指定img的width和height时,就按其内在尺寸显示,也就是图片被保存的时候的宽度和高度。

对于表单元素,浏览器也有默认的样式,包括宽度和高度。

不可替换元素:

display:inline-block将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内 (准确地说,应用此特性的元素呈现为内联对象,周围元素保持在同一行,但可以设置width, height,padding,border与margin等block元素的属性)

行内块元素(inline-block elements)在内部他的表现类似block元素,比如他拥有block元素的width, height,padding,border与margin,而外部的排列方式又类似行内元素,即水平排列,而不是像块级元素一样从上到下排列

display:inline  内联元素 、行内元素

diplay:block 块级元素


2.CSS中怎么让div居中

margin:0 auto元素必须有宽度才能居中

margin后面如果只有两个参数的话,第一个表示top和bottom,第二个表示left和right

因为0 auto,表示上下边界为0,左右则根据宽度自适应相同值(即居中)


div居中实现

 body{ text-align:center}   //父级元素内容居中
 div{margin:0 auto;}    //子元素div元素居中


3.linux脚本提取满足某个条件的行


awk结合  -gt(>)或者-ge(>=)

awk  '$1>10 {print $0}'   example.txt
awk [-F  field-separator]  'commands'  input-file(s)


4.strut常用拦截器

过滤器(函数回调)和拦截器(基于反射和代理)ActionInvocation.invoke()的比较及访问权限控制

参考文章:

http://zhanzhongchu.iteye.com/blog/2100438

http://www.360doc.com/content/13/0409/09/5224731_277069352.shtml

http://blog.csdn.net/java_cxrs/article/details/5514340

 

5.反射一般什么时候用

当你不能在开发时即得到其目标类完整接口定义,只能根据命名规则去进行集成时。
并可以延伸到包装、动态代理等模式的应用中。
有时候也干些hack的事情,比如绕过private保护机制啥的。

反射能把很多业务逻辑进行抽象,形成公用的方法。这也是为什么很多框架会用到反射的原因


反射用的不多,大多数时候你用不上它。但:

  • 文件操作API也用的不多,但你有业务需求的时候没它不行;

  • 线程用的不多,但有时候没线程程序几乎跑不起来;

  • LinkedList也用的不多,但在某些情况下它的效率要比ArrayList要高几十倍;

  • TreeMap(默认按照key排序)也用的不多,但有时候它能简化你的代码;

  • 接口(interface)也不是必须的,你可以不写interface完成几乎所有的功能;

  • 甚至,面向对象也不是必须的,你可以用过程式的代码完成别人用几十个类做的功能;

知识学到了是自己的,何必搞得好像是被迫学习一样,有这个提问的时间都学完了。

P.S. 补充一下:

对于J2EE来说,Hibernate之类的ORM全都基于动态字节码和反射技术,Spring等IoC框架也基于动态代理(有时是动态字节码)和反射技术,各类流行的MVC也是Servlet+反射的实现。

对于Android来说,其本身的Context.startActivity/sendBroadcast等都是基于反射,如Gson/Jackson等JSON-ORM都是基于反射,反射技术还能解决部分跨进程调用问题及系统hack。


6.JVM 垃圾回收算法

wKiom1YDkx2j_7i-AAD40bzxQMQ049.jpg

根搜索

通过选取一些根对象作为起始点,开始向下搜索,如果一个对象到根对象

不可达时,则说明此对象已经没有被引用,是可以被回收的。可以作为根的

对象有:栈中变量引用的对象,类静态属性引用的对象,常量引用的对象等。

因为每个线程都有一个栈,所以我们需要选取多个根对象。

1.  标记—清除算法(Mark-Sweep

2.  复制算法(Copying

3.  标记—整理算法(Mark-Compact

参考文章:

http://blog.csdn.net/ol_beta/article/details/6791229

http://blog.csdn.net/dc_726/article/details/7934101



7.mysqldump备份数据库

linux shell下执行以下命令备份数据库

mysqldump -hhostname  -uroot -p  customer(数据库名) > backup.sql

还原

mysqldump -hhostname  -uroot -p  customer(数据库名) < backup.sql



cache  缓存区

buffer 缓冲区  一般是用在写入磁盘的


Html5类型声明

wKiom1YDcrnT51PxAAUORFGxiOk511.jpg

http://www.w3school.com.cn/html5/html5_doctype.asp



本文出自 “点滴积累” 博客,请务必保留此出处http://tianxingzhe.blog.51cto.com/3390077/1697854

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章