Javabean在idea中的实现

本文探讨了Java中的多态性,包括基本概念、引用类型以及`instanceof`运算符的使用。同时,深入讲解了Object类作为所有Java类的父类,其`toString()`方法的重要性和在子类中重写它的原因。此外,还介绍了抽象类和抽象方法的概念,强调了抽象方法必须存在于抽象类中,并没有具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 多态 :
一种事物的多种形态|表现形式,行为多态。

多态前提 : 继承 | 实现。
多态的最终表现形式 : 父类引用指向子类对象。
多态的调用 : 父类引用调用。
    成员变量 :
        编译运行看父类|左边|类型。
    成员方法 :
        编译看父类|左边|类型,运行找子类|右边|对象。
注意 : 如果没有配合方法的重写,多态就没有意义。
  • 做题四大原则:

     1)继承链:自己没有找父类。
     2) 编译看类型、确定方法,运行找对象
     3)就近最优原则。
     4)父类引用对子类新增方法不可见。
    
  • 基本 :

     数据类型转换:
         自动类型提升 : 小 ---> 大。
         强制类型转换 : 大 ---> 小。
         小范围类型 变量 = (小范围类型)大范围类型数据。
    
  • 引用 :

      转型:
         小: 子类。    大 : 父类。
         向上转型 : 子类 --> 父类。
         向下转型 : 父类 --> 子类。
             子类类型 变量 = (子类类型)父类引用。
     需求 : 当多态调用不能调用子类独有内容时候,可以向下转型,然后调用子类独有内容。
     java.lang.ClassCastException类型转换异常:在向下转型的时候,如果抓成其他的子类类型,就会遇到这个异常。
    
  • instanceof 运算符

     引用 instanceof 类型 : 判断前面的引用是否指向后面类型的对象或者后面类型的子类对象,如果是返回true,不是返回fales。
    

2. Object
老祖宗类,是java中所有类的父类。
如果一个类没有显示的继承父类,默认继承自Object类。

  • toString :
    返回对象的字符串表现形式。

     public String toString() {
         return getClass().getName() + "@" + Integer.toHexString(hashCode());
     当输出一个对象的引用的时候,输出的是对象的引用调用toString方法的返回值==>默认调用toString.
    
  • 为什么要在子类中重写toString方法 :

     因为输出对应的引用时候不想是打印对象的地址值,想要输出对象的所有属性值,对从Object中继承的toString需要,toString实现不满意,在子类中重写toString。
     注意 : 当定义javabean类型,规范都需要重写toStrin。
    
  • ==:
    比较两个数据是否相等。

     基本 : 数据值
     引用 : 对象地址值
    
  • equals :
    比较两个对象数据是否相等。

     Object类中的equals方法 : 默认比较对象的地址值。
         public boolean equals(Object obj) {
             return (this == obj);
         }
    
  • 为什么要子类中重写equals方法 :

     使用Object类的equals方法,默认比较对象地址,业务需求想要比较根据对象的属性值比较是否相等,可以在子类中根据需要重写equals。
    

3. abstract
抽象的

  • 抽象类 :
    被abstract修饰的类。

  • 抽象方法 :
    被abstract修饰的方法。
    没有方法体。
    必须存在与抽象类中。

    需求 : 
       定义开发部门不同职位工作内容。
    注意 :
       1.抽象类不能实例化。
       2.抽象方法必须存在与抽象类中。
       3.抽象类中可以定义可以不定义抽象方法,可以定义任意内容。
       4.抽象类的使用 :
           1)具体子类对象调用成员
               重写所有的抽象方法 + 按需新增。
           2)抽象子类
               按需重写 + 按需新增。
       5.抽象方法必须被重写的,但是只需要重写一次,按需重写多次
       6.abstract不能与private,final,static,native一起使用。
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值