您的位置:首页 > 其它

#每天三个技术问题# 3/30/2018

2018-03-30 14:48 302 查看

今天的问题:

1)Java是LL1文法么?
2)Java的正则表达式实现为什么是NFA,而不是DFA?
3)CSS in javascript有什么优势么?

昨天的问题:

Java 9只用base模块,打包带JRE的可运行文件,有多大?
Linux的启动级别有哪些?systemd和init分别是怎么支持的?
HTML中<meta charset="UTF-8">的用途?

1)Java 9只用base模块,打包带JRE的可运行文件,有多大?
Java9有一个新命令
jlink
 ,和之前JavaFX的命令javapackager差不多。这里有一个教程和示例项目:https://steveperkins.com/using-java-9-modularization-to-ship-zero-dependency-native-apps/
根据他的测试结果,只是base包的话,带JRE 21.7MB。GUI是带JavaFX。



2)Linux的运行启动级别有哪些?systemd和init分别是怎么支持的?
runlevel,准确的说法是运行级别, 来源于System V,Ubuntu 14的init就是sysvinit? 

LSB 4.1.0
IDNameDescription
0HaltShuts down the system.
1Single-user modeMode for administrative tasks.[2]
[b]2Multi-user modeDoes not configure network interfaces and does
4000
not export networks services.[c]
3Multi-user mode with networkingStarts the system normally.[1]
4Not used/user-definableFor special purposes.
5Start the system normally with appropriate display manager (with GUI)Same as runlevel 3 + display manager.
6RebootReboots the system.
Systemd的支持:

Run level 0 is matched by poweroff.target (and runlevel0.target is a symbolic link to poweroff.target).
Run level 1 is matched by rescue.target (and runlevel1.target is a symbolic link to rescue.target).
Run level 3 is emulated by multi-user.target (and runlevel3.target is a symbolic link to multi-user.target).
Run level 5 is emulated by graphical.target (and runlevel5.target is a symbolic link to graphical.target).
Run level 6 is emulated by reboot.target (and runlevel6.target is a symbolic link to reboot.target).
Emergency is matched by emergency.target.
两边支持的级别还是有区别的。Systemd可以指定一个target,然后启动脚本里指定级别。



3)HTML中<meta charset="UTF-8">的用途?
3) 这个问题问的不好,准确的说法是浏览器识别charset的优先级顺序是怎样的?
指定一个HTML页面的Charset,一共有5种方法,顺序如下:
1) 用户客户端指定,比如右键,指定编码,Chrome浏览器,貌似把这个选项删掉了。
2)BOM,新鲜东西啊,字节顺序标记(ByteOrderMark)
3)HTTP Header 
Content-Type

4)
<meta>
 / 
@charset
 for css 或者html4的<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
5)Environment (
charset
 attribute of parent 
<iframe>
 and 
<link>
 elements, encoding of parent document, etc) and/or heuristics
国内很多网站,页面指定的是GB2312,但Header指定GBK,所以他们的页面显示没问题,但我们用GB2312抓取,出现部分乱码,也是浏览器识 编别码顺序的原因。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: