java面试题
作者:admin 日期:2008-02-19
1.Error与Exception有什么区别?
Error表示系统级的错误和程序不必处理的异常,
Exception表示需要捕捉或者需要程序进行处理的异常。
2.uml是什么??统一建模语言UML
IBM的Rational Rose和MS的Visio都是UML工具.
3.java中的顶级类
作为java程序员必须掌握java类库的两个包:java.lang和java.util这两个包
4. this 什么意思C++的this指针是指当前对象
5.javascript之XML DOM对象 1.微软通过ActiveX的MSXML库提供了支持,通过:
var oXmlDom = new ActiveXObject("MSXML2.DOMDocument.5.0")
2.XML DOM对象可以通过load和loadXML方法载入xml文件或者字符串:
oXmlDom.load("test.xml");
oXmlDom.loadXML("<root></root>");
6.组合与继承
1.继承和组合的概念
在新类里简单地创建原有类的对象。我们把这种方法叫作“组合”,因为新类由现有类的对象合并而成。我们只是简单地重复利用代码的功能,而不是采用它的形式。
第二种方法是创建一个新类,将其作为现有类的一个“类型”。我们可以原样采取现有类的形式,并在其中加入新代码,同时不会对现有的类产生影响。这种魔术般的行为叫作“继承”(Inheritance),涉及的大多数工作都是由编译器完成的。对于面向对象的程序设计,“继承”是最重要的基础概念之一。对于组合和继承这两种方法,大多数语法和行为都是类似的(因为它们都要根据现有的类型生成新类型)。
2.组合也就是一个类的对象是另外一个类的成员,一般的程序都有组合的意味,只不过是基本数据类型是成员变量,下面请看具体的例子
class Head
{
Head(){
System.out.println(" head ");
}
}
class Body
{
Body(){
System.out.println(" body ");
}
}
class Person()
{
Head h=null;
Body b=null;
Person() //人是由头和身体组成的,Head和Body的对象是Person的一部分
{
h=new Head();
b =new Body();
}
}
3.继承作为面向对象的三个重要特性的一个方面,在面向对象的领域有着及其重要的作用,好像没听说哪个面向对象的语言不支持继承
class Person
{
private String name=null;
private int age=0;
public Person(String n,int a)
{
name=n;
age=a;
}
int getAge()
{
return age;
}
String getName()
{
return name;
}
void getDescription()
{
System.out.println("name: "+name+"\t"+"age: "+age);
}
}
class Student extends Person
{
private String studno=null;
public Student(String n,String no,int a)
{
super(n,a);
studno=no;
}
}
说明:Student类中有三个成员变量name,age,studno和一个方法getDescription();
注意:子类继承了父类的所有变量和函数,只是子类不能访问父类的private类型的变量和函数,其实privae类型的变量还是继承到子类中的
7,Exception异常与RuntimeException异常区别
1、Exception异常类
Exception给的父类Throwable类的部分声明如下:
public class Throwable implements Serializable
{
private String detailMessage;
public Throwable();
public Throwable(String message);
public String getMessage()
{
return detailMessage;
}
public String toString()
{
String s = getClass.getName();
String message = getMessage();
return (message !=null)?(s+": "+message):s;
}
public void printStackTrace()
{
printStackTrace(System.err);
}
}
异常类Exception中只声明了若干个构造方法
public class Exception extends Throwable
{
public Exception();
public Exception(String s);
};
2、RuntimeException运行异常类
Java的许多异常类主要分为运行异常和非运行异常。运行异常是指由程序本身错误引发的错误,这类异常程序设计时大多可以避免;非运行时异常是指由程序运行环境错误引发的异常,这类异常必须捕获并处理
运行异常类的常见子类有
(1)ArithmeticException(算法异常):除数为0
(2)NullPointerException(空对象异常):当一个对象赋值为null时,如果通过该同对象调用方法,则产生空对象异常。
(3)ClassCastException(类型强制转换异常):不能进行的转换操作
(4)NegativeArraySizeException(负数组异常):
(5)ArrayIndexOutOfBoundsException(数组下标越界异常):
(6)NumberFormatException(数值格式异常);
一个是必须捕获的异常,一个是运行时可避免的异常
Error表示系统级的错误和程序不必处理的异常,
Exception表示需要捕捉或者需要程序进行处理的异常。
2.uml是什么??统一建模语言UML
IBM的Rational Rose和MS的Visio都是UML工具.
3.java中的顶级类
作为java程序员必须掌握java类库的两个包:java.lang和java.util这两个包
4. this 什么意思C++的this指针是指当前对象
5.javascript之XML DOM对象 1.微软通过ActiveX的MSXML库提供了支持,通过:
var oXmlDom = new ActiveXObject("MSXML2.DOMDocument.5.0")
2.XML DOM对象可以通过load和loadXML方法载入xml文件或者字符串:
oXmlDom.load("test.xml");
oXmlDom.loadXML("<root></root>");
6.组合与继承
1.继承和组合的概念
在新类里简单地创建原有类的对象。我们把这种方法叫作“组合”,因为新类由现有类的对象合并而成。我们只是简单地重复利用代码的功能,而不是采用它的形式。
第二种方法是创建一个新类,将其作为现有类的一个“类型”。我们可以原样采取现有类的形式,并在其中加入新代码,同时不会对现有的类产生影响。这种魔术般的行为叫作“继承”(Inheritance),涉及的大多数工作都是由编译器完成的。对于面向对象的程序设计,“继承”是最重要的基础概念之一。对于组合和继承这两种方法,大多数语法和行为都是类似的(因为它们都要根据现有的类型生成新类型)。
2.组合也就是一个类的对象是另外一个类的成员,一般的程序都有组合的意味,只不过是基本数据类型是成员变量,下面请看具体的例子
class Head
{
Head(){
System.out.println(" head ");
}
}
class Body
{
Body(){
System.out.println(" body ");
}
}
class Person()
{
Head h=null;
Body b=null;
Person() //人是由头和身体组成的,Head和Body的对象是Person的一部分
{
h=new Head();
b =new Body();
}
}
3.继承作为面向对象的三个重要特性的一个方面,在面向对象的领域有着及其重要的作用,好像没听说哪个面向对象的语言不支持继承
class Person
{
private String name=null;
private int age=0;
public Person(String n,int a)
{
name=n;
age=a;
}
int getAge()
{
return age;
}
String getName()
{
return name;
}
void getDescription()
{
System.out.println("name: "+name+"\t"+"age: "+age);
}
}
class Student extends Person
{
private String studno=null;
public Student(String n,String no,int a)
{
super(n,a);
studno=no;
}
}
说明:Student类中有三个成员变量name,age,studno和一个方法getDescription();
注意:子类继承了父类的所有变量和函数,只是子类不能访问父类的private类型的变量和函数,其实privae类型的变量还是继承到子类中的
7,Exception异常与RuntimeException异常区别
1、Exception异常类
Exception给的父类Throwable类的部分声明如下:
public class Throwable implements Serializable
{
private String detailMessage;
public Throwable();
public Throwable(String message);
public String getMessage()
{
return detailMessage;
}
public String toString()
{
String s = getClass.getName();
String message = getMessage();
return (message !=null)?(s+": "+message):s;
}
public void printStackTrace()
{
printStackTrace(System.err);
}
}
异常类Exception中只声明了若干个构造方法
public class Exception extends Throwable
{
public Exception();
public Exception(String s);
};
2、RuntimeException运行异常类
Java的许多异常类主要分为运行异常和非运行异常。运行异常是指由程序本身错误引发的错误,这类异常程序设计时大多可以避免;非运行时异常是指由程序运行环境错误引发的异常,这类异常必须捕获并处理
运行异常类的常见子类有
(1)ArithmeticException(算法异常):除数为0
(2)NullPointerException(空对象异常):当一个对象赋值为null时,如果通过该同对象调用方法,则产生空对象异常。
(3)ClassCastException(类型强制转换异常):不能进行的转换操作
(4)NegativeArraySizeException(负数组异常):
(5)ArrayIndexOutOfBoundsException(数组下标越界异常):
(6)NumberFormatException(数值格式异常);
一个是必须捕获的异常,一个是运行时可避免的异常
[本日志由 admin 于 2008-02-19 08:05 PM 编辑]
文章来自: 本站原创
引用通告地址: http://www.is21.cn/trackback.asp?tbID=157
Tags:
文章来自: 本站原创
引用通告地址: http://www.is21.cn/trackback.asp?tbID=157
Tags:
评论: 1 | 引用: 0 | 查看次数: 1536
发表评论
你没有权限发表留言!