`

Java类修饰符总结

    博客分类:
  • Java
 
阅读更多
java的修饰符有:权限修饰符:public、protected、default、private
                修饰符:abstract、static、final

    public   使用对象:最广,类、接口、变量、方法
    protected使用对象:变量、方法 注意:不能修饰类(外部类)
    default  使用对象:类、接口、变量、方法。(即缺省,什么也不写)
    private  使用对象:变量、方法 注意:不能修饰类(外部类)

    abstract使用对象:类、接口、方法
    static  使用对象:类、变量、方法、初始化函数(注意:修饰类时只能修饰 内部类 )
    final   使用对象:类、变量、方法

    transient:告诉编译器,在类对象序列化的时候,此变量不需要持久保存
    volatile:指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理

    native:用该修饰符定义的方法在类中没有实现,而大多数情况下该方法的实现是用C、C++编写的。
    synchronized:修饰方法,多线程的支持


类分外部类和内部类,他们的访问控制是相同的吗
   外部类是相对于内部类而言的,内部类是定义在类里面的类。

外部类的修饰符有:
default(缺省,不写):类定义时前面未加任何修饰符,表示同一个包中可见。
public:修饰类时表示该类能被项目中所有类可见
abstract:表示是抽象类
final:表示类不可以被继承
scrictpf:(java关键字) 当对一个类或接口使用 strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双精度格式表示

内部类又分:成员内部类、局部内部类、静态内部类、匿名内部类
  成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列
  局部内部类:定义在外部类的方法体里面的类
  静态内部类:使用static修饰的内部类
  匿名内部类:就是没有名字的内部类

成员内部类修饰符有:
public:
protected:
private:private不能修饰外部类,
abstract:
final:
static:可以当做普通类使用,而不用先实例化一个外部类。(用他修饰后,就成了静态内部类了)
strictfp:(java关键字) 即 strict float point (精确浮点)。(可修饰类、接口、方法)

局部内部类:
  局部内部类就是在类内的方法中定义的类。
  局部类有一个优势,即对外部世界完全隐藏。即使是同一个类中其他的方法也不能访问它。
  局部类可以访问包含它的外部类,同时也可以访问局部变量。

  局部类不能用public或private访问说明符进行声明,他的作用域被限定在这个方法中,


访问权限符与继承:
  这里的访问权限修饰符指的是:修饰成员变量和方法。分两种情况:
  1.子类与父类在同一个包中:
     此时只有private修饰的变量和方法不能被访问。
  2.子类与父类不在同一个包中:
     此时private和default均不能被访问,protected和public可以


接口修饰符:
  public:所有包可见
  default:(缺省)同一个包中可见
  strictfp:(java关键字) 即 strict float point (精确浮点)。

  接口的变量总是需要定义成:public static final 类型 名称,但可以不用写的这么复杂,默认就是public static final

  接口的方法只能使用public、abstract修饰。

---------------------------------
1、类的修饰符分为:可访问控制符和非访问控制符两种。

可访问控制符是:公共类修饰符 public

非访问控制符有:抽象类修饰符 abstract ;最终类修饰符 final

1 )公共类修饰符 public : Java 语言中类的可访问控制符只有一个: public 即公共的。每个 Java 程序的主类都必须是 public 类作为公共工具供其它类和程序使用的应定义为 public 类。

2 )抽象类修饰符 abstract :凡是用 abstract 修饰符修饰的类,被称为抽象类。所谓抽象类是指这种类没有具体对象的一种概念类。这样的类就是 Java 语言的 abstract 类。

3 ) 最终类修饰符 final :当一个类不可能有子类时可用修饰符 final 把它说明为最终类。被定义为 final 的类通常是一些有固定作用、用来完成某种标准功能的类。

4 )类缺省访问控制符:如果一个类没有访问控制符,说明它具有缺省的访问控制符特性。此时,这个类只能被同一个包中的类访问或引用。这一访问特性又称为包访问性。

2 .域的控制修饰符也分为:可访问控制符和非访问控制符两类。

可访问控制符有 4 种:公共访问控制符: public ;私有访问控制符: private ;保护访问控制符: protected ;私有保护访问控制符: private protected

非访问控制符有 4 种:静态域修饰符: static ;最终域修饰符: final ;易失 ( 共享 ) 域修饰符: volatile ;暂时性域修饰符: transient

1 )公共访问控制符 public :用 public 修饰的域称为公共域。如果公共域属于一个公共类,则可以被所有其它类所引用。由于 public 修饰符会降低运行的安全性和数据的封装性,所以一般应减少 public 域的使用。

2 )私有访问控制符 private : 用 private 修饰的成员变量 ( 域 ) 只能被该类自身所访问,而不能被任何其它类 ( 包括子类 ) 所引用。

3 )保护访问控制符 protected :用 protected 修饰的成员变量可以被三种类所引用:①该类自身;②与它在同一个包中的其它类;③在其它包中的该类的子类。使用修饰符 protected 的主要作用是允许其它包中它的子类来访问父类的特定属性。

4 )私有保护访问控制符 private protected :用修饰符 private protected 修饰的成员变量可以被该类本身或该类的子类两种类访问和引用。

5 )静态域修饰符 static :用 static 修饰的成员变量仅属于类的变量,而不属于任何一个具体的对象,静态成员变量的值是保存在类的内存区域的公共存储单元,而不是保存在某一个对象的内存区间。任何一个类的对象访问它时取到的都是相同的数据;任何一个类的对象修改它时 , 也都是对同一个内存单元进行操作。

6 )最终域修饰符 final :最终域修饰符 final 是用来定义符号常量的。一个类的域 ( 成员变量 ) 如果被修饰符 final 说明,则它的取值在程序的整个执行过程中都是不变的。

7 )易失 ( 共享 ) 域修饰符 volatile :易失 ( 共享 ) 域修饰符 volatile 是用来说明这个成员变量可能被几个线程所控制和修改。也就是说在程序运行过程中,这个成员变量有可能被其它的程序影响或改变它的取值。因此,在使用中要注意这种成员变量取值的变化。通常 volatile 用来修饰接受外部输入的域。

8 )暂时性域修饰符 transient :暂时性域修饰符 transient 用来定义一个暂时性变量。其特点是:用修饰符 transient 限定的暂时性变量,将指定 Java 虚拟机认定该暂时性变量不属于永久状态,以实现不同对象的存档功能。否则,类中所有变量都是对象的永久状态的一部分,存储对象时必须同时保存这些变量。

3 .方法的控制修饰符也分为:可访问控制符和非访问控制符两类。

可访问控制符有 4 种:公共访问控制符: public ;私有访问控制符: private ;保护访问控制符: protected ;私有保护访问控制符: private protected

非访问控制符有 5 种:抽象方法控制符: abstract ;静态方法控制符: static ;最终方法控制符: final ;本地方法控制符: native ;同步方法控制符: synchronized

1 )抽象方法控制符 abstract :用修饰符 abstract 修饰的方法称为抽象方法。抽象方法是一种仅有方法头,没有方法体和操作实现的一种方法。

2 )静态方法控制符 static :用修饰符 static 修饰的方法称为静态方法。静态方法是属于整个类的类方法;而不使用 static 修饰、限定的方法是属于某个具体类对象的方法。 由于 static 方法是属于整个类的,所以它不能操纵和处理属于某个对象的成员变量,而只能处理属于整个类的成员变量,即 static 方法只能处理 static 的域。

3 )最终方法控制符 final :用修饰符 final 修饰的方法称为最终方法。最终方法是功能和内部语句不能更改的方法,即最终方法不能重载。这样,就固定了这个方法所具有的功能和操作,防止当前类的子类对父类关键方法的错误定义,保证了程序的安全性和正确性。所有被 private 修饰符限定为私有的方法,以及所有包含在 final 类 ( 最终类 ) 中的方法,都被认为是最终方法。

4 )本地方法控制符 native :用修饰符 native 修饰的方法称为本地方法。为了提高程序的运行速度,需要用其它的高级语言书写程序的方法体,那么该方法可定义为本地方法用修饰符 native 来修饰;

5 )同步方法控制符 synchronized :该修饰符主要用于多线程共存的程序中的协调和同步。



分享到:
评论

相关推荐

    理解java中的类的各种权限修饰符

    ### 理解Java中的类的各种权限修饰符 在Java编程语言中,权限修饰符用于控制类、方法、变量等成员的访问级别。这有助于提高代码的安全性和封装性。本文将详细探讨Java中的五种权限修饰符:`public`、`protected`、`...

    Java修饰符总结

    Java修饰符主要分为两大类:访问控制符和非访问控制符。其中,访问控制符用于控制类、方法和变量的可访问性范围,而非访问控制符则用于提供额外的功能,如抽象、静态、同步等。 #### 访问控制符 访问控制符包括`...

    Java修饰符总结[汇编].pdf

    Java修饰符总结[汇编].pdf

    java修饰符总结

    下面是对Java修饰符的详细总结: 1. **类(class)可见性修饰符**: - `public`:类对所有类都是可见的,无论是否在同一包内,可以被导入。 - 缺省(无修饰符):类只对同一包内的类可见,其他包无法直接访问,但...

    计算机二级摸底测验Java题继承和接口和java访问权限修饰符总结编程资料目编程资料

    计算机二级摸底测验J继承和接口和java访问权限修饰符总结ava题目

    针对Java中的修饰符总结

    Java中的修饰符总结 Java中的修饰符可以分为两大类:访问修饰限定符和非访问修饰限定符。 访问修饰限定符 访问修饰限定符用于控制类、方法、变量的访问权限。Java中的访问修饰限定符有四种:public、private、...

    JAVA修饰符总结.pdf

    ### Java修饰符总结 #### 一、概述 Java是一种广泛使用的面向对象编程语言,它具有简单、健壮、面向对象和平台无关等特性。在Java中,为了更好地控制类、方法、变量等成员的访问权限以及行为特征,引入了多种修饰...

    Java VS C# 访问修饰符

    下表总结了Java中各访问修饰符的可见性: | 访问修饰符 | 同类 | 同包子类 | 不同包子类 | 不同包 | |------------|------|----------|------------|--------| | public | √ | √ | √ | √ | | protected | √ | ...

    继承和接口和java访问权限修饰符总结.doc

    继承和接口和java访问权限修饰符总结 本文总结了 Java 中的继承、接口和访问权限修饰符的概念和使用。继承是 Java 中的一种机制,允许子类继承父类的属性和方法,並且可以对父类的方法进行重写或重载。动态绑定是指...

    继承和接口和java访问权限修饰符总结.pdf

    Java编程语言中的继承、接口和访问权限修饰符是面向对象编程的重要概念,它们共同构建了类与类之间复杂的关联和数据封装。以下是这些概念的详细解释: **多态性**: 多态性允许一个对象引用变量引用不同类型的子类...

    Java主要修饰符的使用[归纳].pdf

    总结,理解并熟练运用Java的访问修饰符和final、static关键字是编写健壮、可维护代码的基础,它们帮助我们定义类和成员的可见性,确保代码的封装性和安全性。在实际开发中,应根据需求选择合适的修饰符,以实现良好...

    Java入门——Java修饰词总结

    - 介绍:`public`修饰符使得类、接口或成员对所有其他类可见,无论它们是否位于同一包内。这意味着,只要拥有相应的引用,任何类都可以访问被`public`修饰的元素。 2. **private**: - 使用对象:成员 - 介绍:`...

    java中的修饰符介绍

    本文将对几个常见的Java修饰符进行详细介绍,包括`public`、`private`、`protected`以及一些其他修饰符如`abstract`、`final`、`static`、`volatile`和`transient`等。 #### 1. `public` `public`修饰符是最常用的...

    java访问权限修饰符public.doc

    ### Java 访问权限修饰符详解 #### 一、引言 Java 作为一种面向对象的编程语言,提供了四种访问权限修饰符,它们分别是 `public`、`protected`、`default`(通常称为“包访问”或“友好访问”,文中提到的 `...

    电子教材:《Java语言程序设计-修饰符》pdf版

    作为一门广泛应用于各类软件开发领域的编程语言,Java提供了一系列修饰符帮助开发者更好地控制类成员的可见性与访问级别,这对于实现良好的封装性和模块化至关重要。 #### 二、`protected`修饰符详解 `protected`...

    Java四种访问控制修饰符知识点总结

    Java四种访问控制修饰符知识点总结 Java是一种面向对象的编程语言,在Java中,访问控制修饰符是用来控制类、变量、方法的访问权限的。Java提供了四种访问控制修饰符:public、protected、private、default(默认为...

    java 四种关系修饰符访问(csdn)————程序.pdf

    在Java编程语言中,访问修饰符是用来控制类、...总结来说,Java的访问修饰符控制了类的封装性,而静态代码块则提供了一种在类加载时执行初始化逻辑的方式。理解这些概念对于编写符合面向对象原则的高效代码非常重要。

    类的封装(访问修饰符)

    总结起来,类的封装通过访问修饰符实现,它帮助我们构建更加安全、易于维护的代码结构。合理使用public、private、protected和默认访问级别,能够有效控制类的接口暴露程度,增强软件的健壮性和可扩展性。在实际编程...

    java.封装与访问控制修饰符(解决方案).md

    封装是一种将数据(属性)和行为(方法)绑定到一起并隐藏对象内部实现细节的机制,而访问控制修饰符则定义了类的成员(属性和方法)可以被哪些其他类访问。 封装通过将类的属性设置为私有(private),只能通过该...

    java类、对象、成员、package、import、访问修饰控制符总结

    ### Java类、对象、成员、Package、Import、访问修饰控制符总结 #### 1. 面向对象程序设计特性 面向对象编程的核心在于通过**封装**、**继承**和**多态**来构建和组织代码。 ##### 1.1 封装 封装是指将数据及其...

Global site tag (gtag.js) - Google Analytics