JAVA简明摘要(八)深入多态(接口与抽象类)

本文概述了Java中的抽象类与接口,包括它们的定义、用途、抽象方法的特性,以及Object作为所有类的基类。讲解了如何使用接口解决多重继承问题,并通过实例展示了Dog类如何继承Canine并实现Pet接口。

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

1 抽象类

abstract class Canine extends Animal
{}

1.抽象类不能被初始化。
2.抽象类除了被继承之外,是没有用途,没有值,没有目的的。

2 抽象方法

1.抽象的方法没有实体。

public abstract void eat();

2.不能在非抽象类中拥有抽象方法。
3.具体类中必须实现所有抽象的方法。

3 对象之母 Object

1.Java中所有类都是从Object这个类继承出来的。
2.没有直接继承过其他类的类会是隐含的继承对象。
(1)equals(Object o)
(2)getClass()
(3)hashCode()
(4)toString()
3.当某个对象是以Object类型来引用时,Java会把它当作Object类型的实例。这代表你只能调用由Object类中声明的方法。
4.任何从ArrayList< Object >取出的东西都会被当作Object 类型的引用不管它原来是什么类型。
5.转换回原来的类型

Object o = al.get(index);
Dog d = (Dog) o;
d.roam();

4 接口

接口用来解决多重继承的问题。
继承接口的类必须实现接口的所有方法。
接口的方法带有public和abstract的含义,修饰符可不需要。

public interface Pet
{
  public abstract void beFrirndly();
  public abstract void play();
}

public class Dog extends Canine implements Pet
{
  public void beFriendly(){...};
  public void play(){...};
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值