1.Switch case具体的支持类型?
Q:支持byte、short、char、int基本类型,枚举类型和String类型(JDK7以上支持),四种基本类型的包装类型也支持,但是原因在于触发了自动拆箱,将包装类型拆成了基本类型,所以可以.
2.Class.forName与ClassLoader.loadclass区别
(1)ClassLoader loader = XXX.class.getClassLoader(); //获得ClassLoader
(2)loader.loadclass("XXX"); //加载类,不执行初始化
(3)loader.loadclass("XXX").newInstance(); //加载类,执行初始化,执行静态块,执行new
(4)Class.forName("XXX"); //加载类,执行初始化,执行静态块,不执行new
(5)Class.forName("XXX", false, loader); //加载类,不执行初始化,不执行静态块
(6)Class.forName("XXX", false, loader).newInstance(); //加载类,执行初始化,执行静态块,执行new
3.设置Linux全局JDK版本,不同用户使用不同的JDK版本,tomcat使用特定的JDK版本
全局: vim /etc/profile
在尾部追加
JAVA_HOME=/opt/jdk1.7.0_07
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
保存退出,输入
source /etc/profile 使配置文件生效
其他用户:切换其他用户
vim ~/.bash_profile
尾部追加1.8xx版本JDK配置:
JAVA_HOME=/usr/java/jdk1.8.0_131
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
保存退出,输入
source ~/.bash_profile 使配置文件生效
tomcat指定版本:打开tomcat/bin/catalina.sh
export JAVA_HOME=/opt/jdk
export JRE_HOME=/opt/jre 即可