Java--基础 面向对象特性之继承三

继承:子类可以继承父类非私有的信息(属性和方法)public protected 默认

public 修饰就不需要get set方法
一旦Cat和Pet建立继承关系之后,Cat类就继承了Pet类的name和age,
此时在Cat类中,name,this.name,super.name表示的是同一个数据,都指向了Pet的name
Cat里面没有age,name , Cat调用父类属性 是直接指向父类的属性,只是一个引用

不能为了满足子类的需求而改父类
重写:子类可以对继承public protected 自父类的方法进行重新定义

equals():判断两个对象是否相等(两个对象的内存地址一致)

== 和 equals()的区别?
==:
表现形式:
如果数据是基本数据类型的,==比较的是两个数据的值是否相等。
如果数据是引用类型的,==比较的是两个数据的内存地址是否相等。
本质:
比较的是栈内存中的值是否相等。

equals():是Object类中定义的一个方法(源头),只用引用数据类型可以调用,基本数据类型无法调用,默认方法体是通过==进行判断的,比较两个对象的内存地址是否相等。
equals()经常会被Object的子类进行重写,比较典型的是String类中的重写,改为判断两个字符串的值是否相等来决定最终的结果。
instanceof关键字判断某个对象是否属于某个类
A instanceof B 判断A对象是否是通过B类来创建的
表达式的结果是boolean true表示A是通过B来创建的
如果A不是通过B来创建的,则表达式直接报错

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值