1.编写一个函数将一个十六进制数的字符串参数转换成整数返回。
String str="123add";
int len=str.length;
int sum=0;
for(int i=0;i<len;i++){
char c=str.charAt(len-1-i);
int n=Character.digit(c,16);
sum+=n*(1<<4*i);
}
其实也可用Integer.parseInt(str,16);
2.Spring的DI与IoC是什么?
DI(Dependency Injection)依赖注入的意思
IoC(Inversion of Control)控制反转的意思
这两个含义是相同的,只是叫法不同而已,他两是Spring框架的特性。就是按需所求对象,不需要关心其怎样来。
3.构造器Constructor是否可被override?
构造器不能被继承,所以不能被重写,但是可以被重载。
4.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承具体类(concrete class)? 抽象类中是否可以有静态的main方法?
都是可以的
普通类与抽象类的区别是抽象类不可以实例化,允许abstract方法
5.写clone()方法时,通常都有一行代码,是什么?
clone 有缺省行为,super.clone();因为首先要把父类中的成员复制到位,然后才是复制自己的成员。
6.面向对象的特性?
封装,抽象,继承与多态。
7.java中实现多态的机制是什么?
靠的是父类或接口定义的引用变量可以指向子类或具体实现类的实例对象,而程序调用的方法在运行期才动态绑定,
就是引用变量所指向的具体实例对象的方法,也就是内存里正在运行的那个对象的方法,而不是引用变量的类型中定义的方法。
8.String是最基本的数据类型吗?
基本数据类型包括byte、int、char、long、float、double、boolean和short。
java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类
9.String 和StringBuffer的区别
JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。
String类表示内容不可改变的字符串。而StringBuffer类表示内容可以被修改的字符串。
当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。
另外,String实现了equals方法,new String(“abc”).equals(new String(“abc”)的结果为true,而StringBuffer没有实现equals方法,
所以,new StringBuffer(“abc”).equals(new StringBuffer(“abc”)的结果为false。