zoukankan      html  css  js  c++  java
  • JAVA笔记6-继承和权限控制

    1、

    (1)类的成员的权限修饰符有public,protected,private或default,限定其他对象对该类对象成员的访问权限。

    (2)class的权限修饰符只可以是public或default

      public:类可以在任何地方被访问;

      default:类只可以被同一个包内部的类访问。

    2、继承

    (1)Java中使用extends关键字实现继承;

    (2)通过继承,子类自动拥有了基类所有成员(成员变量和方法,但构造方法不能被继承),将父类的private成员也继承下来,但是不能访问(有父类private成员的所有权,但没有使用权)

    (3)Java只支持单继承,不允许多继承。

    3、继承的例子

    4、重写overwirte或override

    (1)子类中可以根据需要对基类中继承来的方法进行重写;

    (2)重写方法必须和被重写方法具有相同的方法名称、参数列表和返回类型

    (3)重写方法不能使用比基类中被重写方法更严格的访问权限

    (4)重写方法抛出的异常必须是基类中被重写方法抛出的异常或其子类

    (4)对于基类中private的方法不能被重写,子类中定义相同名称的方法时,是新方法,而非重写。

    对比:重载overload:方法名相同,参数个数或参数类型不同才构成重载(编译器可以区分开),只有返回值类型不同不构成重载(编译器无法区分开)。

    5、super关键字(面宝)

    使用super来引用基类。

                            

    6、继承中的构造方法

    (1)子类的构造过程中必须调用其基类的构造方法

    (2)子类可以在自己的构造方法中使用super(参数列表argument_list)调用基类的构造方法;

      使用this(参数列表)调用本类中其他的构造方法

      super(参数列表),this(参数列表)都必须写在子类构造方法的第一行,显然二者不能同时被调用。

    (3)如果子类的构造方法中没有显示调用基类构造方法,则系统默认调用基类无参构造方法

    (4)如果子类的构造方法中既没有显示调用基类构造方法,而基类中又没有无参构造方法,则编译出错

  • 相关阅读:
    use paramiko to connect remote server and execute command
    protect golang source code
    adjust jedi vim to python2 and python3
    install vim plugin local file offline
    add swap file if you only have 1G RAM
    datatables hyperlink in td
    django rest framework custom json format
    【JAVA基础】网络编程
    【JAVA基础】多线程
    【JAVA基础】String类的概述和使用
  • 原文地址:https://www.cnblogs.com/seven7seven/p/3654670.html
Copyright © 2011-2022 走看看