`
369128396
  • 浏览: 85136 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Java访问权限修饰符(转)

    博客分类:
  • java
 
阅读更多
1、Class类的访问权限:
public:可以供所有的类访问。
默认:默认可以称为friendly但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++。默认的访问权限是包级访问权限。
      即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即使可以实例化该类
      (当然如果这个类不具有实例化的能力除外,比如该类没有提供public的构造函数)。

说明:
    1、每个编译单元(类文件)都仅能有一个public class
    2、public class的名称(包含大小写)必须和其类文件同名。
    3、一个类文件(*.java)中可以不存在public class。
     这种形式的存在的场景:如果我们在某个包内撰写一个class,仅仅是为了配合同包内的其他类工作,而且
    我们不想再为了撰写说明文档给客户(不一定是现实意义的客户,可能是调用这个类的类)看而伤脑筋,而且有可能过一段时间之后
    有可能会彻底改变原有的做法,并完全舍弃旧版本,以全新的版本代替。
    4、class不可以是private和protected。
    5、如果不希望那个任何产生某个class的对象,可以将该类得所有构造函数设置成private。但是即使这样也可以生成该类的对象,就是class的static的成员(属性和方法)可以办到。

2、类成员变量的访问权限:
public:紧接public的属性任何类都可以访问到。可以直接使用ClassName.propertyName。但是从类的封装性上来考虑将一个类的属性定义成public一般很少使用,
     在定义静态常量的时候通畅会这样定义。如:public static final int PAGE_SIZE=10;
private:只有类本身内部的方法可以访问类的private属性,当然内部类也可以访问其外部类的private成员的。(属性和方法)
默认(friendly):包级可见,同一个包内的类可以访问到这个属性,可以直接使用className.propertyName来访问,但是从类的封装性特性来说很少这样使用类的属性的。
protected:关键字所处理的是所谓“继承”的观念。对于同一包的其他类,protected=默认,对于不同包的类,如果存在继承关系,而baseClass存在protected属性,则可以被其自继承,而不同包的其他类
      则不能访问类的protected属性。
   
3、类的成员方法的访问权限:
其从语法角度来讲,这些访问权限控制符作用于类的方法和作用于类的属性上的效果是一样的。
public:所有类可见。
pirvate:只有同一类内部的方法可见,在有就是内部类也可以访问到。
默认(friendly):包内可见。
protected:继承可见。

4、访问权限存在的理由
1、“让使用者无法碰触到他们不该碰触的东西。”这些东西仅供类的内部机制使用。将某些成员声明成private,对于使用者来说可以说是一种服务,
因为这样使用者可以知道哪些是他关注的哪些是不重要的,不需要关注,如此历来对于使用来说降低了对使用对象认识的难度。
2、(最终要的理由)让程序设计者可以更动class内部运作方式,而无须担心波及到客户端程序。

5、java的“访问权限修饰符”赋予classes开发者极具有价值的控制能力。身为classes开发者,如果你的任何改变可以完全不干扰你的使用者,
你便可以安心改变你的底层实现,因为客户端程序员无法访问class的这一部分。
通过今天学习访问权限的问题了解到,接口或者抽象等等策略所谓的“实现隐藏”其根本原因并不是说为了隐藏实现的代码和思路,而是降低使用者的使用难度,以及从维护角度来说可见范围的控制给程序维护带来了极大的安全性。
分享到:
评论

相关推荐

    java访问权限修饰符public.doc

    java 访问权限修饰符详解 在 Java 语言中,访问权限修饰符是指用来限定类、成员变量和方法的可访问范围的关键字。访问权限修饰符分为四种:public、protected、friendly 和 private。每种修饰符都有其特定的访问...

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

    本文将详细探讨Java中的五种权限修饰符:`public`、`protected`、`default`(也称为包访问权限)、`private`以及`static`修饰类的情况,并通过实例来展示这些修饰符的具体应用。 #### 1. Public - **概述**: - `...

    Java访问修饰符

    Java 访问修饰符是 Java 编程语言中的一种重要机制,它控制着类、方法和变量的访问权限。访问修饰符可以分为四种:public、protected、private 和缺省(无访问修饰符)。 public 访问修饰符 public 访问修饰符是最...

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

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

    JAVA访问修饰符大归纳

    JAVA 访问修饰符是 JAVA 语言中的一种基本概念,它控制着类、方法、变量的访问权限,帮助开发者更好地组织和管理代码。根据 JAVA 访问修饰符的特性和使用范围,我们可以将其分为三类:修饰符类的访问修饰符、属性的...

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

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

    java访问权限修饰符[参考].pdf

    ### Java访问权限修饰符详解 #### 一、访问权限修饰符概述 Java语言提供了四种不同的访问权限修饰符:`public`、`protected`、`default`(也称为包私有或包默认)以及`private`。这些修饰符用于控制类、方法、变量...

    Java修饰符使用整理(含实例)

    Java 修饰符是 Java 语言中的一种基本语法元素,用于控制访问权限、继承关系、抽象类和静态成员变量等方面。Java 修饰符可以分为两大类:访问修饰符和非访问修饰符。访问修饰符包括 public、protected、default 和 ...

    java常用的修饰符

    Java修饰符是编程中至关重要的概念,它们用于定义类、接口、变量和方法的访问权限、行为和特性。本文将详细介绍Java中常见的修饰符及其用途。 1. **类的修饰符** - **public**: 公共访问控制符,允许任何地方的...

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

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

    java 三个修饰符习题.zip

    `private`是限制访问权限最严格的修饰符,只允许在同一个类内部访问。如果一个成员(如变量或方法)被声明为`private`,那么在类的外部是无法访问它的。`private`常用于实现数据封装,保护类的内部状态不被外部代码...

    Java零基础-访问控制权限修饰符.md

    ### Java零基础-访问控制权限修饰符 #### 内容概要 本文旨在全面解析Java中的访问控制权限修饰符,具体涉及`public`、`private`、`protected`及默认访问级别(即不使用任何显式修饰符时的情况)。通过本篇文章的...

    《Java基础访问修饰符全解析》.docx

    public是最宽松的访问权限修饰符,被其修饰的类、方法、变量或构造函数可以被任何其他类访问。无论这个类位于哪个包中,public成员始终对所有其他类可见。类被声明为public时,任何其他类都可以访问这个类;字段、...

    java修饰符介绍

    在Java编程语言中,修饰符是用来限制或指定代码元素(如类、方法、变量)的访问权限、特性或行为的关键词。以下是对标题和描述中提及的Java修饰符及其相关知识点的详细介绍: 1. 类的访问控制修饰符: - **public*...

    举例详解Java中的访问权限修饰符

    Java中的访问权限修饰符是编程语言中控制代码访问的重要机制,主要用于确保程序的封装性和安全性。Java提供了五种访问权限级别,分别是public、friendly(或称为default)、private和protected。下面将详细解释这些...

    针对Java中的修饰符总结

    4. 默认(不写任何修饰符):包访问权限,当前包中的同一类或者不同类可以访问 非访问修饰限定符 非访问修饰限定符用于修饰类、方法、变量的其他特性。Java中的非访问修饰限定符有三种:abstract、final和static。...

    java的访问修饰符的范围说明

    例如,类(外部类)只能使用public和默认权限修饰符,而数据成员、方法成员和构造方法可以使用所有四种修饰符。同时,修饰符修饰的是成员的“被访问”的权限,它控制的是哪些其他类可以访问这些成员。 通过实例考察...

    Java访问修饰符大归类

    每种修饰符都有其特定的访问权限和用途。 类的访问修饰符 Java 中有四种类的访问修饰符: 1. 缺省(friendly):同一包中的类可以访问。 2. Public:任何包、任何类都可以访问。 3. Abstract:抽象类,是不是实例...

    Java四种权限修饰符知识点详解

    "Java四种权限修饰符知识点详解" Java是一种面向对象的编程语言,它提供了四种权限修饰符,分别是public、protected、default和private。这些修饰符用于控制类、数据成员、构造方法和方法成员的访问权限。 1. 默认...

Global site tag (gtag.js) - Google Analytics