面试遇到的题目!

一:how many differentias with abstract class and interface?

首先从语法的角度说两者不同:

1)抽象类里面可以有抽象的方法,也可以由实现的方法。而接口里面所有的方法必须是abstract修饰的(可省略),也就是所有的方法都是抽象的。 

2)抽象类里面可以定义protected,public修饰的属性供子类继承使用,而接口里面只能定义public static final修饰(静态的不能被修改)的成员变量(实际上相当于常量)。

3)接口是一种特殊的抽象类,java中类的继承是单继承,而接口则可以多继承或者多实现

然后从设计理念的角度说说两者区别:

public abstract Door{

 abstract void open();

 abstract void close();

}

public interface Door{

   void open();

   void close();

}

public AlarmDoor extends Door{}可以

public AlartmDoor implements Door{}也可以

如果现在要为报警们添加一个报警的方法这个时候需要怎么做呢?

1:为抽象类们添加一个报警的方法

2:为接口添加一个抽象的报警方法

3:重新定义一个接口添加报警的方法,继承抽象类Door实现新添加的接口

选第三种更合适。根据借口隔离原则,如果需要在此借口添加方法,那么所有用到这个借口的实现都需要实现其抽象的方法不合适。

二:字符流和字节流的有关概念和用法

这根问题学的时候都晕倒(概念太多),web开发中暂时还没用用到。所以忘得差不多了。回头再复习复习!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值