面向对象巩固

  面向对象(下):

1, 什么是类的继承 ?

以一个类为基础(父类, 超类), 新设计一个类(子类, 基类), 可以被称为类的继承

2, 什么是方法的重写(Override / Overwrite) ? 方法重写需要满足什么样的条件 ?

重载(Overload)(发生在同一个类中)

 

重写:

1, 必须要有继承 !

 

2, 方法名相同

3, 参数列表(参数类型, 参数个数一致)

4, 返回值类型相同

5, 子类重写父类的方法不能使用比父类更为严格的访问权限

 

Object

 

toString方法的重写

equals方法的重写

hashCode()

 

3, final 关键字代表什么意思 ? 怎么使用 ?

final: 最终的(常量--不可更改的值)

变量:

常量, 让这个变量只能被赋值一次

方法:

被final关键字修饰的方法, 不能被重写

类:

被final修饰的类, 不能被继承

 

4, 多态的定义是什么 ?

Cut

Cut

 

在同一个方法中, 参数的类型相同, 

但是由于运行的环境不同而表现出来的不同的形式

 

父类的引用指向子类的对象

 

5, 什么叫对象转型, 什么叫向上转型, 什么叫向下转型

向上转型: 隐式

向下转型: 显式, 需要手动的强制转换一下

 

instanceof关键字

用来判断某个变量是否是一种类型

左边写变量, 右边写一种类型, 最后结果返回boolean值

 

父类的对象, 不能访问子类中特有的成员(成员变量, 成员方法)

 

6, 什么样的类可以被称为抽象类 ? 抽象类的特点 ?

1, 在一个类中, 某个方法不需要实现, 完全交给子类去实现, 

这个方法需要被声明为抽象方法

2, 含有抽象方法的类, 必须被声明为抽象类

抽象类可以没有抽象方法

即使没有抽象方法, 也不能被实例化

3, 抽象类无法被实例化(没法使用new)

4, 抽象类的子类没有能力去实现父类的抽象方法的时候

自己也需要被声明为抽象类, 没有实现的方法声明为抽象方法

等待下一个子类去实现

 

7, 什么是接口 ? 如何使用 ?

接口是一种特殊的抽象类

抽象类是继承来的, 继承只能单继承

接口可以多个同时实现

接口中的方法默认都是public

接口中可以定义成员变量(全局, 整个实现类都可以访问)

实现类实现 继承了父类的接口 的时候, 

需要实现所有的接口中的方法

接口可以多继承(类不行)

如果一个抽象类实现接口, 可以只实现部分方法

普通类需要全部实现

 

Ball

play

BasketBall

FootBall

 

8, package 和 import 关键字

package关键字可以用来解决类名重名的现象

*.jar(java第三方类库)

 

9, 权限修饰符(访问控制)都有哪些 ? 各自的含义是什么 ?

publicprotected()private

公开的受保护的默认私有的

rint

posted @ 2018-05-08 15:35  峰栯  阅读(78)  评论(0编辑  收藏  举报