• super、this、抽象类、继承


    super

    代表是父类对象,并且在创建子类对象时,就先创建父类对象,再创建子类对象,可以在子类方法中使用super调用父类的非私有方法。

    this

    代表本类对象,谁创建就代表谁

    实体类,被创建的class类
    public class Animal {
        private String name;
        private Integer id;
        public void getAddress(){
    	//输出this地址
            System.out.println("Animal---->this-->"+this);
        }
    }
    
    main类,主动创建对象
    public static void main(String[] args) {
            Animal animal=new Animal();
            animal.getAddress();
    	//输出被创建对象的引用地址
            System.out.println("main---->this-->"+animal);
        }
    
    结果
    Animal---->this-->com.example.demo.entity.Animal@f39991
    main---->this-->com.example.demo.entity.Animal@f39991
    

    可以看出两个地址一样

    抽象类

    定义

    就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。

    好处

    1:提高了代码的重用性
    2:类与类产生了关系,是多态的前提

    注意事项

    1:抽象类有构造方法,但是必须依靠子类才能创建对象,所以只能单继承,
    2:创建对象后,对象地址调用方法或者调用成员变量都会优先查找子类,子类没有,再查找父类,this和super关键字除外。

    接口

    定义

    接口,是Java语言中一种引用类型,是方法的集合。

    好处

    1:定义一套标准

    注意事项

    1:包含抽象方法(JDK7及以前),默认方法和静态方法(JDK8),私有方法(JDK9),
    2:接口没有构造方法,因此可以多实现。

    XFS
  • 相关阅读:
    Entity Framework版本历史概览
    读书笔记—CLR via C#章节3
    读书笔记—CLR via C#章节1-2
    C#编程实践–产假方案优化版
    老调重弹--面向对象设计原则--包设计原则
    Redis(七)分布式锁
    Redis(九)高可用专栏之Sentinel模式
    Redis(九)高可用专栏之《简介篇》
    Redis(七)持久化(Persistence)
    Redis(六)管道(Pipelining)
  • 原文地址:https://www.cnblogs.com/xiaofengshan/p/14598561.html
Copyright © 2020-2023  润新知