今天的问题:
1)Java是LL1文法么?
2)Java的正则表达式实现为什么是NFA,而不是DFA?
3)CSS in javascript有什么优势么?
昨天的问题:
1) Java 9只用base模块,打包带JRE的可运行文件,有多大?
2) Linux的启动级别有哪些?systemd和init分别是怎么支持的?
3) HTML中的用途?
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。
Linux的运行启动级别有哪些?systemd和init分别是怎么支持的?
runlevel,准确的说法是运行级别, 来源于System V,Ubuntu 14的init就是sysvinit?
Systemd的支持:
两边支持的级别还是有区别的。Systemd可以指定一个target,然后启动脚本里指定级别。
3)HTML中的用途?
这个问题问的不好,准确的说法是浏览器识别charset的优先级顺序是怎样的?指定一个HTML页面的Charset,一共有5种方法,顺序如下:
1) 用户客户端指定,比如右键,指定编码,Chrome浏览器,貌似把这个选项删掉了。
2)BOM,新鲜东西啊,字节顺序标记(ByteOrderMark)
3)HTTP Header Content-Type
4) / @charsetfor css 或者html4的
5)Environment (charset attribute of parent
国内很多网站,页面指定的是GB2312,但Header指定GBK,所以他们的页面显示没问题,但我们用GB2312抓取,出现部分乱码,也是浏览器识 编别码顺序的原因。