zoukankan      html  css  js  c++  java
  • Java_修饰符

    在java中修饰符主要分为两类:++访问修饰符++和++非访问修饰符++

    访问控制修饰符

    修饰符 当前类 同一包内 子孙类 其他包 其他包子孙类
    public Y Y Y Y Y
    protected Y Y Y N Y/N
    default Y Y N N N
    private Y N N N N

    访问控制和继承

    • 父类中声明为public的方法在子类中必须为public
    • 父类声明的protected的方法在子类中不能声明为private。可以声明为protected或public
    • 父类声明的private方法,不能被继承

    非访问修饰符

    static 修饰符

    用来修饰类方法和类变量、动态代码块,对类变量和方法的访问可以直接使用 类名.属性名 和 类名.方法名 的方式访问。

    final 修饰符

    用来修饰变量、方法和类,分别表示变量不可变,方法不可覆盖,类不可继承。

    变量能被显式地初始化并且只能初始化一次。被声明为 final 的对象的引用不能指向不同的对象。但是 final 对象里的数据可以被改变。也就是说 final 对象的引用不能改变,但是里面的值可以改变

    abstract 修饰符
    抽象类:

    1. 抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充
    2. 一个类不能同时被abstract和final修饰,如果一个类包含抽象方法,那么该类一定要声明为抽象类
    3. 抽象类可以包含抽象方法和非抽象方法

    抽象方法:

    1. 抽象方法是一种没有任何实现的方法,该方法的具体实现由子类提供
    2. 抽象方法不能被声明为final和static
    3. 任何继承抽象类的子类必须实现父类的所有抽象方法,子类也是抽象类
    4. 抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为public

    synchronized 修饰符
    synchronized声明的方法同时只能被一个线程访问

    transient 修饰符
    transient 关键字表示成员变量不参与序列化的过程

  • 相关阅读:
    小程序苹果手机上video会盖住绝对定位的view层,小程序 video 层级,原生组件
    两个高斯分布乘积的理论推导
    两个高斯分布的和的分布——正态分布的再生性
    随机变量、随机向量和随机有限集的定义
    UdpClient.BeginReceive(AsyncCallback, Object) 方法
    基于C#的UDP协议的异步实现
    基于C#实现串口通信Demo
    pitch、yaw、roll三个角的区别
    dotNET Core 3.X 使用 Jwt 实现接口认证
    C#使用RabbitMQ
  • 原文地址:https://www.cnblogs.com/zeo-to-one/p/9348419.html
Copyright © 2011-2022 走看看