zoukankan      html  css  js  c++  java
  • Day03:数组 、 继承的意义(上)

    继承

    面向对象编程三(四)大特征

    (抽象),封装,继承,多态
    什么是继承?
    继承是面向对象编程中一种代码复用的方式
    为什么需要继承?
    减少代码冗余,提高程序的可维护性和可扩展性
    怎样使用继承?
    语法:

    class 类名A  extends 类名B{
    
    }

    类名A继承了类名B
    类名A中可以使用类名B中的属性和方法
    类名A称之为子类(派生类)
    类名B称之为父类(超类,基类)
    继承的特性:
    1.子类类中可以调用父类成员
    2.子类对象打.可以调用父类成员
    3.子类继承父类应该符合is-a原则
    4.构造方法无法被继承
    继承的单根性:

    一个类只能继承一个父类

    继承的传递性:
    子类可以调用到祖先类的成员

    Object类

    java中所有类的父类是Object

    所有类型对象都可以调用Object类中的方法

    编写的类,如果没有继承任何类,默认继承Object

    构造方法的执行

    实例化子类对象先运行父类构造

    子类对象中实际包含着一个父类的构造方法(使用spuer)

    如果子类构造方法中不指定调用父类的哪个构造,默认调用父类的无参构造

    extends关键字

    继承是代码复用的一种形式。

    提高代码的复用性,简化了代码,让类与类之间产生了继承关系,才有了多态特性的存在。

    注意:

    千万不要为了其他类的功能简化代码,而建立继承关系,必须要类与类之间存在继承关系。

    子类拥有父类的成员,子类不能拥有父类中被private修饰符修饰后的成员。

    类的继承并不改变类成员的访问权限。

    语法:

    public class 子类 extends 父类{
    
    
    }

    多层继承:

    在多层继承最下层的子类用有父类的整个继承体系的成员,最上层的父类里面定义所有子类的共性描述。

     多继承问题?

    JAVA中不支持多继承,只支持单继承。因为多继承存在安全隐患,当多个父类定义了相同的成员,子类对象不确定运行哪个。

    JAVA保留这种机制,并用了另一种方式——多实现。

    super关键字:

    对象在方法中对父类对象的引用

    子父类构造函数

    super.属性;
    super.方法();

    super调用父类的属性和方法主要用于区分同名成员

    语法:

    susper();//调用父类

     注意:

    super必须编写在构造方法中的第一行

    特点:

    在对子类对象进行初始化的时候,父类的构造方法也会运行,那是因为子类的构造函数默认第一行(有一条隐式的语句)super();

    子类每个构造方法第一行都有一个隐式的super()。

    Object类tostring 

    概述:一个特殊的类。

    Object:它是JAVA中所有对象的直接或间接的父类,根父类(基类),它里面定义的功能时所有对象都应该具备。

    注意:

    当定义一个类时,没有指明要继承某类时,它默认继承Obejct类。

    Object类equals()

    ==和Object里面的equals其实比较的就是两个对象的内存地址是否一致。

  • 相关阅读:
    事物
    性能优化
    eclipse中如何查看一个android模拟器的内部文件
    Android无线测试之—UiAutomator UiDevice API介绍二
    Android无线测试之—UiAutomator UiDevice API介绍一
    Linux最大打开文件描述符数
    Android无线测试之—UiAutmator运行命令介绍与快速调试
    Android无线测试之—UiAutomator编译与运行测试代码
    Android无线测试之—Genymotion配置过程中常见问题
    Android无线测试之—Genymotion模拟器环境搭建
  • 原文地址:https://www.cnblogs.com/wsnb8/p/11307734.html
Copyright © 2011-2022 走看看