JavaDay07--Notes(toString();equals(Object obj);+重写与重载)

一、Object类的方法

1. toString()方法

Object类的、String返回值类型的toString();

System.out.printf(stu);

即默认System.out.printf(stu.toString());


直接打印某对象的引用时,则默认会调用这个对象的toString()方法,默认打印的内容中包含这个引用所指向的16进制内存地址。


2. equals(Object  obj)方法

“abc".equals("abc"); //重写/复写后,比较当前对象和传入参数对象的具体内容是否相等

 x.equals(y);   //x和y指向的地址是否相等,相等返回true,否则返回false

eg:不是同一对象

没有传值(默认为空值)

传递的参数是否属于特定类/为特定对象

注意:String 类中已经重写了 equals(Object  obj ) 方法,重写后的方法比较的是两个字符串的 内容 是否一样

*==比较对象的引用



二、 面向对象的多态性

1. 对象转型

向下转型(先向上转,再向下转)

向上转型

转型后调用的方法,是重写之后的方法

2. 方法体现

重写                                  重载

override                              overload
子类和父类间                       一个类中

子类根据需求重写父类中的方法            根据传入的参数不同,完成的功能也不同



三、抽象类与接口

关键字

即保留字,有特殊意义。不能当包名、类名

final

声明情况

类:类不可被继承

属性(变量,如局部变量和成员变量):不可更改值/重新赋值(变量变为常量)

方法:子类不可被重写方法

注意:常量大写

 

抽象类

abstract

定义为抽象类:1.类中包含了抽象方法;2.子类可以不实现/重写父类中所有的抽象方法

不能声明为抽象方法:构造、静态、私有、final等方法

抽象类必须被继承,它的方法必须被重写

 

interface(特殊的抽象类)

eg:副接口由子类对象转成

Fly f1=new Kite():

 

注意:接口和抽象类都不能被实例化

"单继承"——

"多继承"——接口



Copyright © 2017 Jin Hanquan. All rights reserved.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值