面向对象(2)

面向对象

三大特性

​ 在使用时,需要在main中,先new出来子类,然后用子类的名称加上点,便可以根据提示,调用需要的东西

封装
  1. 属性私有(private), get、set是可以操作私有属性的方法
  2. get:是获得这个数据
  3. set:是给这个数据设置值
  4. 快捷键: alt+insert 生成get/set属性
  5. 也可以在set中,设置一些前提条件(if else 等)来增加程序的安全性;提高系统的可维护性
继承
  1. extends --> 拓展 即子类是分类的拓展
  2. 子类继承了父类后,就会拥有父类的全部方法
  3. public
    protected
    default
    private (可以使用get set进行调用)
    优先级如上
  4. 在java中,所有的类,都默认继承object类

==================================================

  1. super指向父类,但如果是private则无法用super调用
  2. 在子类中有隐藏代码,默认调用父类,即super(),可以自己写,也可不写;但是super()必须在顶部
  3. super只能出现在子类的方法或者构造方法中
  4. super和this 不能同时调用构造方法
  5. this :本身调用者的这个对象;没有继承也可以使用;本类的构造
    super :代表父类对象的应用;只能在继承中使用;父类的构造

=================================================

  1. 方法的重写:Override
  2. 重写是方法的重写,与属性无关
  3. 重写的关键词只能是public
  4. 如果需要重写,则在定义方法时,不要加上static,如果加上了static,则不会重写,而是直接读入所调用的类中的
  5. 重写需要有继承的关系,子类重写父类的方法
  6. 方法名必须相同,参数类表相同,修饰符的范围可以扩大,但不能缩小( public>Protected>default>private)
  7. 抛出的异常,范围可以被缩小,但不能扩大;
  8. 子类的方法和父类的方法需要一致:方法体不同
  9. 重写的原因:
    1).父类的功能子类不一定需要,或不一定满足
    2).alt + insert : override
  10. 重写之后,重写的那个,则不会再继承父类的了,二货思子类自己本身的了
多态
  1. 多态:统一方法可以根据发送对象的不同而采用多种不用的行为方式
    一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多

  2. 动态编译:类型:可拓展性

  3. 多态的注意事项
    1)多态是方法的多态,属性并没有多态
    2)父类和子类,有联系, 否则会出现类型转换类型异常–>ClassCastException
    3)继承关系:方法需要重写(但是,static属于类;通过final修饰的市是常量,不能重写),父类的引用指向子类对象

=================================================

  1. instanceof的使用

  2. 方法:System.out.println( X instanceof Y );
    如果 X 与 Y 之间有父子关系(祖父关系也可以),那么结果是ture

=================================================

  1. 关系的转化
    1)如果是从 低的 -> 高的(没有错,不要怀疑) ,则可以直接转化
    2)相反,则需要强制转换
    3)强制转换的方法:(需要转换成的类型)变量名 ->然后在按Alt+enter键 -> 便可以实现
    4)但是强制转化可能会造成丢失一些方法
    5)其优点是方便方法的调用,减少重复的代码
    7. 抽象的编程思想
Static
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值