1.
面向对象的特征有哪些方面请详细讲解
Ø
封装
:
一个类中有多个的属性与方法,对于方法与属性有四种修饰符
private
、
protected
、
public
、
internal
修饰
符的访问权限。
private :
私有成员, 在类的内部才可以访问。
protected :
保护成员,该类内部和继承类中可以访问。
public :
公共成员,完全公开,没有访问限制。
internal:
在同一包内可以访问
Ø
继承:子类继承父类的所有方法与属性。可以覆盖,在覆盖的构造函数及方法通过super(),方法super.父类方法名()
Ø
多态:
n
静态
:
方法名相同,参数不同。
n
动态:将子类的实例传与父类的引用,调用的是子类的方法。将实现接口的类的实例传与接口的引用,调用的是实现类的方法。
2.
运行时异常与一般异常有何异同?
Ø
运行时异常:由
java
虚拟机抛出的异常。用户不必处理。
Ø
一般异常是用户可以抛出的异常,如果抛出调用必须进行处理。
3.
说出一些常用的类,包
,
接口,请各举
5
个
Ø
类
:Math ClassLoader Class Method HttpServlet String Integer
Ø
包
:java.lang.*
;
java.sql.*
;
java.io.*
;
javax.xml.*
;
java.util.*
Ø
接口
: Collection Set List Map EJBObject EntityBean SessionBean EJBHome
4.
String
和
StringBuffer
的区别
Ø
String
在合并字符串时要转化成
StringBuffer
,所以效率较低度。
StringBuffer
的效率较高
5.
int
和
Integer
有什么区别
Ø
Int
是基本的数据类型,不是对象。
Ø
Integer
是一个封装类,其实例可以封装一个整型值,其有多个方法,如
parseInt(
“”
)
,将字符串转化为了一整型。
6.
String
是最基本的数据类型吗
?
Ø
不是,其是一个对象。
7.
作用域
public,protected,private,
以及不写时的区别
Ø
Public:
不同包、同一包、类内都可用
Ø
Private
:类内
Ø
Protected:
不同包的子类、同一包、类内都可用
Ø
不写时
:
同一包内、类内
8.
char
型变量能不能定义为一个中文
?
为什么
?
Ø
可以,因其有
16
位,正好一个中文汉字。
9.
继承时候类的执行顺序
Ø
先是父类,后是子类。
10.
内部类的实现方式
?
内部类
(1)
Public class superClass
{
Pubic class subclass
{
}
}
匿名类
Public class superClass extends Frame
{
This.addActionListener
(
new ActionListener()
Public void actionPerformed(ActionEvent e)
{
e.printStackTrace();
}
)
}
11.
垃圾回收机制
,
如何优化程序
?
Ø
静态内存存放的是类,动态内存存放的是对象(非解态的属性),当一个实例没有引用时由
JVM
收回实例所占的内存。
12.
float
型
float f=3.4
是否正确
?
Ø
报错,应当是
float f=3.4f
Ø
如果是
float f=3(
整数
)
正确
13.
谈谈
final, finally, finalize
的区别。
Ø
Final
:不可变,在类前不可被继承、在方法前不可被覆盖、在属性前是常量
Ø
Finally:
是异常处理中的不管有没有错都执行一次。
Ø
Finalize
:是类级的方法,当这个类的实例被
JVM
清除时会自动调用。
14.
Anonymous Inner Class (
匿名内部类
)
是否可以
extends(
继承
)
其它类,是否可以
implements(
实现
)interface(
接口
)?
Ø
可以,但不写
extends
或
implements
接口,而是直接
new
接口或
new
父类。
15.
Static Nested Class
和
Inner Class
的不同,说得越多越好
(
面试题有的很笼统
)
。
16.
&
和
&&
的区别。
Ø
&&
的是短路与,是要左边为
false
,直接返回对右边不进行判断。
Ø
&
是与,左边为
false
,右边还要进行计算,所以效率低一些
17.
GC
是什么
?
为什么要有
GC?
Ø
Gc
是主动进行垃圾收集。
Ø
代码如下
Runtime r=Runtime.getRuntime();
r.gc();
18.
String s = new String("xyz");
创建了几个
String Object?
19.
Math.round(11.5)
等於多少
? Math.round(-11.5)
等於多少
?
Ø
Math.round(11.5)=12
Ø
Math.round(-11.5)=-11
20.
short s1 = 1; s1 = s1 + 1;
有什么错
? short s1 = 1; s1 += 1;
有什么错
?
当用
+
号时,
Short
不可以直接相加,必须将
short
转化为
int
才可以执行。如下
Ø
a=(short)((int)a+1);
Ø
short s1 = 1; s1 += 1;
正确,没有错误。
posted on 2006-09-19 23:05
Endisoft 阅读(136)
评论(0) 编辑 收藏 所属分类:
J2SE 、
Struts