JAVA中问答2

26、构造方法能继承吗?构造方法能重载吗?
构造方法不能继承,但是子类对象创建时,需要调用父类构造方法,产生父类对象
构造方法可以重载,通过重载方法完成属性的一些初始化操作


27、final、finally、finalize的区别是什么?
Final  是修饰符,可以修饰类、方法、变量。修饰类,表示类不能被继承;修饰方法,方法不能子类被重写;修饰变量,表示变量是常量
Finally 是语句块,无论是否有异常,都会执行的代码,一般用于资源回收
Finalize 是一个方法,在Object中定义。当对象被垃圾回收之前,自动调用的方法


28、访问修饰符有哪些?各自作用范围是什么?
public  protected 默认  
private 私有的,只有本类可以访问
public:公开的,可以被任何对象访问
protected:可以被同一包中的类访问,还可以被类的子类访问,不管子类在哪个包中。
默认:可以被同一包中的其他类访问
private:只有该类本身可以访问,不对外公开。  


29、什么是内部类?内部类class文件是怎样命名的?
在一个类中定义一个类叫内部类,内部类相当于外部类属性。它的产生需要依赖外部类对象。
Class文件名是:外部类名$内部类名.class


30、什么是多态?多态有什么特点?
多态是指可以使用父类变量指向子类实例,可以使用接口变量指向实现类对象。但反过来不行
多态的特点:相同的行为,不同的实现方式。


31、面向对象的特征有哪些?
继承 封装 多态  抽象
32、什么是抽象类?什么是抽象方法?定义抽象类的关键字是什么?
如果一个方法只有方法的定义,但是没有方法的内容,这个方法叫抽象方法。而用抽象方法的类叫抽象类。抽象类不能被直接实例化。定义抽象类的关键字abstract


33、接口如何定义?实现接口用什么关键字?一个类实现接口必须做什么?
定义接口:Interface   
实现接口:Implements      
一个类实现接口必须实现接口中所有的方法,否则这个类只能是抽象类。


34、接口中定义的方法修饰符是什么?接口中定义的变量修饰符是什么?
接口方法修饰符:Public abstract   变量: public static final


35、抽象类和接口的区别是什么?
1、抽象类和接口都不能直接实例化。抽象类变量只能指向子类对象,接口变量只能指向实现类对象
2、抽象类可以有抽象方法,也可以有具体方法,但接口只能定义抽象方法
3、抽象类的变量是普通属性。接口中定义的变量是public static final
4、抽象类只能单根继承,但接口可以多实现


36、异常的API结构是怎样的?Error和Exception有什么区别?
Throwable 为父类  有两个子类
Error(错误,可以捕捉,但不能处理)
Exception(异常,可以捕捉,可以处理)


37、异常的执行顺序怎样?如果在try块中有return,finally会执行吗?
先执行try语句块,如果没有异常顺序执行,有异常,终止try块其他代码,转去catch块执行。 无论是否有异常,finally都会执行,
如果在try块中有return,finally会在跳出方法之前执行


38、finally是否在任何时候都会执行?
不是,虚拟机关闭时不会执行  system.exit(0);


39、throw 和throws的区别是什么?
Throw是语句,表示显示抛出异常对象  throw new Exception();
Throws是方法修饰,表示该方法可能会抛出某个异常。调用该方法,必须处理该方法抛出的异常


40、异常分为几种?如何区分?
异常分为:编译期异常(检查异常);运行期异常(非检查异常)。
编译期异常必须处理。否则编译错误。
运行期异常可以处理可不处理,不处理也会通过编译。所有运行期异常都是RuntimeException的子类。




41、如何得到当前工作目录?
System.getProperty(“user.dir”);


42、String x = "abc" 和 String x = new String("abc")有什么区别?
String x = “abc”  x指向的是常量池中的字符串常量对象
String x = new  String(“abc”)  x 指向堆中的字符串对象,但堆中字符串对象的产生,必须以常量池中的字符串常量为模板。


43、String和StringBuffer的区别?
Stirng 具有长度不可变的特性,  当对String 作添加、替换、删除时,不会改变对象的内容,而是产生新对象。所以在堆String做频繁操作时,效果较低
StringBuffer 是缓冲区的对象,长度可以变化,当对StringBuffer作操作时,不会产生新对象。
一般使用时,先用StringBuffer 完成字符串相关的操作,再用toString()转换成String。


44、如何将字符串转化为基本数据类型?
Int  x = Integer.parseInt(“2”);


45、如何将日期对象进行"2011-12-10"格式化输出?
SimpleDateFormat  s = new SimpleDateFormat(“yyyy-MM-dd”);
s.format(new Date());


46、javaBean规范有哪些内容?
1、必须有一个公共的无参的构造方法。
2、属性私有,通过公有的get和set方法,对属性进行设置和访问。
3、必须实现序列化接口 java.io.Serializable


47、集合的作用是什么?集合框架的API结构是怎样的?
集合可以完成对象的存储、检索、操作、传输数据。
Collection为父类接口,List和Set是两个子接口,还有一个单独接口Map
集合框架(JCF)包括三个部分:接口、实现类、算法
实现类:List:ArrayList,  Set:HashSet    Map: HashMap
算法:Iterator(迭代算法) Collections(算法类)


48、List、Set、Map集合各自有什么特点?
List元素可以重复,线性
Set元素不可重复
Map键值对,键对象不能重复


49、集合元素如何添加?如何删除?如何遍历?
添加:add()  put()(Map)
删除:remove
遍历:
1、for(int i = 0 ,i<list.size();i++){
object obj = list.get(i)
}
2、iterator it = list.iterator ();
While(it.hasNext()){
Object  obj = it.next();}
3、For(Object  obj: list){}


50、集合如何进行排序?
Collections.sort(list,new Comparator()){
publis int compare(Object 01,Object 02)
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值