都说java是一种实用性技术,这是事实,但我们不能忽视理论知识的学习。因为只有打好基础,后面再进行java实战编程的时候才会得心应手。J关键词是java理论基础知识不可或缺的一个知识点,让我们今天谈谈关键字Protected相关知识,并且告诉你们该怎样使用关键字Protected。
为了更好的理解关键字Protected,还是先来为java零基础朋友们介绍一下什么是java关键词?Java关键字是在计算机语言中提前定义的,具有特殊意义的标志符,有时被称为保留字,以及具有特殊意义的变量。Java关键字java编译器具有特殊意义,用于表示数据类型或程序结构,关键字不能用作变量名、方法名、类别名、包名和参数。
关键字Protected它更重要,尤其是访问控制关键字使用protected,因为java语言访问控制的复杂性,对使用充分讨论protected的情况非常重要。
为了最好地使用数据抽象,我们讨论过,每个数据结构都可以从接口和实现两个方面来考虑。重申接口描述了实现者和用户之间的公共合同。私人实现告诉机器如何满足合同要求。
为了使双方的用户和实现者达成一致的结构行为,无论在哪里使用,接口都必须是可见的。“用户”当然,它可能是结构本身,或同一包中的另一个结构,或包外的一个实体。我们建议使用单词 public描述用户可见的类别、方法和域(由于只能通过公共方法访问,因此几乎没有必要使数据域公开)。
另一方面,实现应尽可能隐藏用户。只有实现者才能看到结构的内部工作。这样保护的时候,只要合同满足,实现者可以在不影响用户应用程序的情况下进行修改和实现。事实上,,语言具有动态装载的类,如java,数据结构的实现者可以修改已编译的应用程序。维护和可靠性的原因,这是一个特征。
广泛使用的语言,java是第一种提供两级封装的语言:类和包。显然,类为将相关域和方法结合起来提供了一种方法。实现者应该能够看到一个类中的所有域和方法,这一点很重要,但对用户来说只有有限的元素是可见的。
包提供了一种将相关类别组合在一起的包(越来越普遍)方法。它也可以用来划分命名空间(可引用两种类型的向量: structure Vector和java util. Vector)。访问保护对是否访问同一包中的域或方法敏感,语言设计师显然会意识到,在可见性方面,应区分包内外的访问。
访问有两种类型:公共和默认。默认类别是私有的,在包的外部是看不见的。方法(和数据)有四种访问室。技术许可证约束增加的顺序是公共的、受保护的、默认的和私有的:
(1)公共方法总是可见的。描述接口时,这是理想的关键词;
(2)受保护的声明是受保护的方法,在同一包中声明的类别是可见的,这种扩展也是可见的,不管扩展是否在包里。;
(3)默认或友好的声明中没有关键字类的方法对于包中声明的所有类别都是可见的,这种类型在同一包中的扩展也是可见的;
(4)一种私有的方法在类外是看不见的。
如果使用公共访问控制,这意味着没有控制方法和域的访问。用户可能直接访问实现,破坏接口提供的控制。即使是最简单的数据结构,对实现所有访问都会被破坏任如何努力保持数据结构的一致性?。
对于“日常程序员”,有必要提出特别警告。因为使用包的动机是微妙的,它们的使用将可观的费用引入当前的编程环境,因此,它倾向于在默认或用户包中开发软件。这是相当危险的,因为非私有访问控制在包里没有区别。绝对隐藏绝对是特别危险的,因为在包内,公共、受保护和默认访问没有区别。那么绝对隐藏的数据只能使用 实现private关键字。
绝大多数情况下,关键字Protected适用。但是,读者应该意识到,在这里使用它并不是一种理想的接受,这只是对可用方法的接受。简而言之java不是完美的,我们可以期待其访问控制的改进。