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

    一、final

    final数据

      必须在域的定义处或每个构造器中用表达式对final进行赋值,java允许函数参数声明为final,这意味着在方法中无法更改此参数。final的基本类型表示值不可变,引用类型表示无法将其指向另一个对象,但对象本身内容可以修改。

    final方法

      final方法明确禁止覆盖,使得继承的类中行为保持不变。类中所有的private方法都隐式地指定是final的,如果父类中有一个private或private final的方法f(),子类中可以有与该方法同名的函数,因为对于子类来说,父类中的f()行为不可见,因此编译器不会报错。覆盖只针对基类的public 和 protected的字段或方法。

    final类  

      final类禁止继承

    二、static

    三、abstract

    四、Java访问控制权限  

      Java提供了访问权限修饰词,可以用来确定库中的哪些类对该库的使用者是可用的。在一个类的内部,其成员(包括成员变量和成员函数)能否被其他类所访问,取决于该成员的修饰词。访问权限控制的作用如下:

    a. 为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分。

    b. 为了让类库设计者可用更改类的内部工作方式,而不必担心会对用户造成重大影响。

    (1)public         

      接口访问权限一般不会用public暴露一个域,除非这个域已经被声明为final。(跨包访问)

    (2)protected   

      protected修饰符提供一个从包外部访问包的方法,即包中类被包外类继承重用

    (3)包访问权限   

      默认访问权限,没有任何关键字。包访问权限允许将包内所有相关的类组合起来,以使它们彼此之间可以轻松地相互作用,包访问权限为包的存在提供了意义

    (4)private        

      private实现了数据隐藏。任何可以肯定只是该类的一个“助手”方法的方法,都可以将它指定为private,以确保不会再包内的其他地方误用到它,于是也就防止你去改变或删除这个方法。

    package

      Java中的包如同文件夹一样,包也采用了树形目录的存储方式。Java包主要是为了防止类文件命名冲突以及方便进行代码组织和管理,把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。

    类的访问权限

      Java中类的修饰词仅有public和包访问权两种,没有private和protected。有一个特例是“内部类”,其可以是private或protected的。如果你不希望其他任何人对该类拥有访问权,你可以把所有的构造器都指定为private,但是可以在该类的 static成员内部(如静态方法生成类实例)进行创建。

      如果一个类的访问权限为“包访问权”,并且其内部有一个static的成员为public的话,则其他包中的类仍旧可以访问该static成员,哪怕它们并不能生成该类的对象。

      对于一个java文件,最多只能有一个public类,若没有Public类则表明其仅供包内使用,对外界不可见。每个java文件还可以有任意数量的非public类,所在包外无法访问这些类,因为其主要用来为public类提供支持。

  • 相关阅读:
    python 基础知识(一)
    挖坑和打井的思考
    静坐冥想
    恭喜你被裁员了!
    什么叫做内心强大?怎样变成一个内心强大的人?
    年轻人,你的时间到哪啦?
    树莓派3B+ 人脸识别、摄像头安装和使用
    树莓派3b+ 实现视频监控
    如何设置树莓派 VNC 的分辨率
    为什么大多数托管辅导班做不大?
  • 原文地址:https://www.cnblogs.com/anxiao/p/7007262.html
Copyright © 2011-2022 走看看