栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java继承

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java继承

#继承规则

一个类只能单一继承一个类,但可同时实现多个接口

package charactor;
  
//同时能进行物理和魔法伤害的英雄
public class ADAPHero extends Hero implements AD,AP{
  
    @Override
    public void magicAttack() {
        System.out.println("进行魔法攻击");
    }
  
    @Override
    public void physicAttack() {
        System.out.println("进行物理攻击");
    }
  
}
#对象转型 # #引用和对象

对象即可以看做是一个实例,而引用是指向对象的一个标识,例子:

Person person;
person = new Person("张三");

“操纵的标识符实际是指向一个对象的引用”,也就是说person是一个引用,是指向一个可以指向Person类的对象的引用。

# #转换规则

1、非继承关系的类不可转换
2、子类可转换为父类对象
3、父类转成子类需加强制类型转换

#类的多态条件

1、父类的引用指向子类对象
2、调用的方法在子类中有重写

#Object类

1、所有的类默认继承Object类
2、Object类常用的具备toString()方法,其意思是返回当前对象的字符串表达。

#final关键字

1、final关键字修饰类不能被继承
2、final关键字修饰引用只能指向一次对象
3、final关键字修饰常量只能赋值一次
4、final关键字修饰方法不能被重写

#接口与抽象类 # #抽象类

1、抽象方法
当一个方法被abstract修饰时,该方法为抽象方法
2、抽象类
当一个类有抽象方法则必须声明为抽象类
3、若抽象类中无抽象方法则单纯不能被实例化
4、子类继承抽象类,需重写抽象方法,否则必须为抽象类

# #接口

1、声明
声明接口类时采用关键字interface,并且内部只能声明抽象方法(JDK8新特性中可声明默认方法)与public、静态、final的属性。
(默认方法)关键字:default、且有方法体

package charactor;
 
public interface AD {
        //物理伤害
    public void physicAttack();
}
package charactor;
 
public interface AD {
        //物理伤害
    public void physicAttack();
}

2、实现
实现接口时,采用implements关键字,且实现接口时必须全部实现接口中的抽象方法,否则该类为抽象类。

package charactor;
 
public class ADHero extends Hero implements AD{
 
    @Override
    public void physicAttack() {
        System.out.println("进行物理攻击");
    }
 
}
# #区别

1、抽象类可以有抽象方法与非抽象方法,且属性可声明为各种类型,但是接口只能有抽象方法,属性必须声明为public、静态、final的属性。
2、一个类可以实现多个接口但是只能继承一个抽象类

# #相同点

继承抽象类与接口都必须重写(实现)其中所有抽象方法,否则为抽象类。

#内部类与匿名类、本地类(带名字匿名类)

1、内部类与方法属性同等声明
2、匿名类声明在方法中
3、非静态内部类,需先有对象再有类 :new 外部类().new 内部类()
4、静态内部类不需要对象,类直接调用外部类: new 外部类.静态内部类()

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/762515.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号