java总结今日学习内容:7.15

Object类:

1.所有类的父类

2.重写toString(),equals()方法

q1.==与equals()方法的区别:不重写没区别,重写后:==比较地址值;equals()比较内容

手动重写equals()方法

public boolean equals(Obj obj){

if(obj instanceof Xxx){

if(obj==this){

return true;}

else if(obj.xxx==this.xxx){

return true;

}

else{

return false;

}

}

else{return false;

}

}

多态性:

多态性的基础:继承和方法的重写;

为什么要有多态性:

.增加代码的复用性与简洁性;

使用方法:

父类 变量名= new 子类();体现了多态性

          a

注意:1.此时a是一个“父类",不可以调用子类专属的方法,只能调用子类重写的或者父类本身就有的方法

2.在执行方法过程中,优先调用子类重写的方法,要使用父类的未重写方法时,得用super关键字

而关于super关键字,其既可以在此调用父类的方法和属性,也可以用来调用构造器;

在继承关系中,子类的构造器在没有显示指定构造器的情况下,自动默认调用super(),即父类空参构造器(当父类中重写构造器导致无默认空参构造器时,即导致子类构造器报错)

instanceof关键词和向下转型:

instanceof关键词:用来判断一个对象obj,是否是指定类的实例,从而便于进行向下转型

向下转型:(类型)变量名     向下转型后,即可以调用子类特有的属性与方法;

开发中多态的用法:

面向多态(接口)编程:

通过多态性,实例化实现类,补充接口(抽象类)里的抽象方法

例:interface Usb{

}

class Mouth implements Usb{                                       class KeyWord implements Usb{

}                                                                                      }

Usb user = new Mouth();

Usb user = =new KeyWord;

内部类:

1.成员内部类:

class OutClass{

class InnerClass{

}

}

实例化内部类:OuterClass outer = new OuterClass();

                        OuterClass.InnerClass innerclass = outer.new Innerclass();

注意:内部类可以调用外部的属性和方法(OuterClass.this.方法)

2.匿名内部类:

用于接口的实例化:

Interface inerface{

}

class TestInterface implements interface{

@override

Interface inner  =new Interface();//本质是类的实例化

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值