面向对象的常见问题

面向对象的三大特性

封装:隐藏细节,提高代码重用性

继承:通过子类继承父类,提高代码的扩展性;继承是多态的前提。

多态:提高代码的灵活性,降低耦合性

什么是构造方法

方法名称与类名一致、没有返回值、创建对象时,通过new关键字调用

重载和重写

重载:在同一个类中,一组相同名称但参数不同的方法定义

举例:Arrays.sort()、String字符串的substring()

重写:在子类中,对父类的方法进行“覆盖",方法名称与参数必须与父类的方法保持一致

举例:重写Object类的equals()、toString()等方法

抽象类和接口

抽象类:抽象类使用abstract关键字定义、抽象类中允许定义:构造方法、普通方法、抽象方法、子类通过extends关键字继承抽象类,1个子类只允许继承1个父类(单继承)

接口:接口使用interface关键字定义、接口中允许定义抽象方法(定义时可以省略abstract关键字) 默认方法(定义时使用default关键字)、实现类通过implments关键字实现接口,1个实现类允许实现多个接口(多实现)、接口之间允许多继承

static关键字

静态方法:可以直接通过类名调用,任何的实例也都可以调用

静态成员变量:方便访问变量

静态内部类:只能访问外部类的静态属性或方法

静态代码块:可以有多个,位置可以随便放,JVM加载类时会执行这些静态的代码块,每个代码块只会被执行一次

final关键字

final关键字修饰的类,是最终类,不允许被“继承”、final关键字修饰的方法,是最终方法,不允许被子类“重写”、final关键字修饰常量(基本数据类型的常量,不允许修改值、引用数据类型的常量,不允许重新分配地址)

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值