zoukankan      html  css  js  c++  java
  • java中的类修饰符、成员变量修饰符、方法修饰符

    类修饰符:

    public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。

    abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现(抽象方法)。

    final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。

    friendly,默认的修饰符,只有在相同包中的对象才能使用这样的类。

    说明:对于顶级类(外部类)来说,只有两种修饰符:public和默认(default)。因为外部类的上一单元是包,所以外部类只有两个作用域:同包,任何位置。因此,只需要两种控制权限:包控制权限和公开访问权限,也就对应两种控制修饰符:public和默认(default)。

    如果类使用了private修饰符,说明是个内部类。内部类的上一级是外部类,那么对应的有四种访问控制修饰符:本类(private),同包(default),父子类(protected),任何位置(public)。当一个内部类使用了private修饰后,只能在该类的外部类内部使用。

    1 package xiushi;
    2 
    3 class Test1 {
    4     
    5     private  class a1{
    6         //这个就是一个内部类
    7     }
    8 }

    成员变量修饰符:

    public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。

    private(私有访问控制符)指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。

    protected(保护访问控制符)指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。

    friendly ,在同一个包中的类可以访问,其他包中的类不能访问。

    final,最终修饰符,指定此变量的值不能变。

    static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。

    transient(过度修饰符)指定该变量是系统保留,暂无特别作用的临时性变量。

    volatile(易失修饰符)指定该变量可以同时被几个线程控制和修改。

    说明:静态变量与实例变量的区别

    1:在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。

    2:在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。

    方法修饰符

    public(公共控制符)

    private(私有控制符)指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)

    protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。

    final,指定该方法不能被重载。

    static,指定不需要实例化就可以激活的一个方法。

    synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。

    native,本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

     

     

     

  • 相关阅读:
    JDom写入XML例子
    hdu 2549
    hdu 1328
    hdu 1334
    hdu 2547
    hdu 2374
    hdu 2550
    hdu 1335
    hdu 2548
    hdu 1722
  • 原文地址:https://www.cnblogs.com/GH0522/p/8168952.html
Copyright © 2011-2022 走看看