学习中概念问题及理解
1、数组有没有length()这个方法?String有没有length()这个方法?
数组没有length()这个方法,有length的属性。String有有length()这个方法。
2、抽象类和接口有什么区别?
抽象类:
1抽象方法,只有行为的概念,没有具体的行为实现。
2使用:abstract 关键字修饰,并且没有方法体。
3包含抽象方法的类,就一定是抽象类。
使用: abstract 关键字修饰,包含抽象方法。
抽象类不能直接创建实例。可以定义引用变量。
4抽象类只能被继承,一个具体类继承一个抽象类,必须实
现所有抽象方法。
5 抽象方法和抽象类非常适合作为系统的分析和设计的工具。
接口:
1 接口:全部的方法都是抽象方法,全部的属性都是常量。
接口用来表示纯抽象概念,没有任何具体的方法和属性。
2 不能实例化,可以定义变量。
3 接口变量可以引用具体实现类的实例。
4 接口只能被实现(继承),一个具体类实现接口,必须使用全部的
抽象方法。
5 接口之间可以继承。
6 一个具体类可以实现多个接口,实现多继承现象,表示:
7 接口中的属性,默认是常量 public static final
8 接中的方法一定是:public abstract
9 实现一个接口,使用关键字implements, 实现实际上是
一种继承关系。接口和实现类是父子类型的关系
3、重写和重载的区别?
重写:参数列表必须完全与被重写的方法相同,父类方法被默认修饰时,只能在同一包中,被其子类被重写,如果不在同一包则不能重写。父类的方法被protoeted时,不仅在同一包中,被其子类被重写,还可以不同包的子类重写。返回的类型必须一直与被重写的方法的返回类型相同.
重载:参数列表不同,可以有不同的返回类型,可以有不同的访问修饰符,对于继承来说,如果某一方法在父类中是访问权限是priavte,那么就不能在子类对其进行重载
4、请你写出你理解的Java面向对象的三大特性:
封装:减少了代码的冗余,有隐秘性,不会随意被用户所更改
继承:减少了代码的冗余,让类与类之间有了联系,大大增加了程序的易维护性
多态:方法的重写、重载与动态连接构成多态性。
5、写出异常的语法(throw和try):
try{异常代码块
}catch( 异常类型){
对异常进行处理的代码块}
throw:拋出一个异常。异常是一个表达式,其值的类型可以是基本类型,也可以是类。

浙公网安备 33010602011771号