`

关于方法访问控制符protected

 
阅读更多

http://bbs.csdn.net/topics/390297526?page=1#post-393055530

 

所以总结下来,关于方法能否调用有两点:

1. 方法是否属于该对象,自身的方法和继承的方法都属于对象,这是能否调用的前提,解决了有没有的问题。

2. 该方法的访问控制符(access modifier)与当前调用地点是否满足访问控制符的要求,解决了见没见的问题。

比如楼主提到的情形,方法调用发生在包外,调用点所在类又没有继承方法声明时所在类,因此不可调用(原因是方法不可见,不是没有)。而此时,调用方法的实例是继承了方法所在类这一事实构成了混淆点,它是继承,但不是方法调用发生点所在类的继承。 为什么要调用发生点所在类的继承,是因为访问控制的目的就是控制访问范围,当方法被访问(调用)时,它不希望在非继承外包类中被访问,这个限制是指方法调用地点,如果是指调用对象,那就要对实例所在类作访问控制了,但类的访问控制符不包括protected.

 

http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

分享到:
评论

相关推荐

    Java的访问控制符

    属性和方法的访问控制符有四种:private, default, protected, public  可以用如下的表描述:(Yes表示可访问,空表示不可访问)  作用:变量, 方法上的修饰 1 package com.gxa.day8.am; 2 3 import ...

    【后端】java基础(5.3)java高级基础之java的修饰符——访问控制符

    访问控制符:访问控制符的作用是说明被声明的内容(类、属性、方法和构造方法)的访问权限 我们的访问控制符有四种: public protected 不修饰 private 这里有一张经典的表可以说明他们的作用范围: 访问控制符 同一类...

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

    如何使用访问控制权限修饰符限制类、接口、成员变量和方法的访问范围 如何合理选择适当的访问控制权限修饰符来保护数据和封装代码 理解默认访问级别的含义和限制 阅读建议 在阅读本文档之前,您应该具备以下基础知识...

    易被忽视的protected方法跨包继承问题.pdf

    为使学生深刻理解java面向对象程序设计中访问控制的基本概念,本文分析了教师在讲授protected访问控制关键词时可能会遇到的问题,提出一个对比讲解protected和default访问控制修饰符的教学方案,对二者的访问控制特性...

    Java关键字及其作用

    protected 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。可以在声明protected 类、方法或字段的类、同一个包中的其他任何类以及任何子类(无论子类是在哪个包中声明的)中引用这些类、...

    重载与覆写/重写的区别

    重写方法访问修饰符一定要大于被重写方法访问修饰符 * (public > protected > default > private) * * 原因: * 2. 有一个可以装1升水的瓶子;你需要用另一个瓶子去继承它, 那你觉得你能用一个半升谁的瓶子...

    Scala进阶_成员访问修饰符

    Java中的访问控制,同样适用于scala,可以在成员前面添加private/protected关键字来控制成员的可见性。但在scala中,没有public关键字,任何没有被标为private或protected的成员都是公共的 案例 定义一个Person类 ...

    Java面向对象程序设计.doc

    只能被同一个包中的类访问 " " " "3、关于被保护访问控制符protected修饰的成员变量,以下说法正确的" "是( ) " "A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在 " "其他包中的该类的子类 " "B....

    java方法总结(重载,构造方法,调用方法)

    访问权限 [修饰符] 返回值类型 方法名(参数列表){ ... 方法体 ... } 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。例如:private(私有)、default(默认)、public(公共)...

    2024 毕业设计 源码 网络购物中心项目.zip

    5. **修饰符**:根据需要选择合适的修饰符,如public、private或protected,以控制方法的可见性和访问权限。 总的来说,定义方法时需要遵循正确的语法规则,注意方法的定义位置、方法名及参数列表、返回值类型、...

    2024 毕业设计 源码 芝麻开门博客网.zip

    5. **修饰符**:根据需要选择合适的修饰符,如public、private或protected,以控制方法的可见性和访问权限。 总的来说,定义方法时需要遵循正确的语法规则,注意方法的定义位置、方法名及参数列表、返回值类型、...

    2024 毕业设计 源码 新奥家电连锁网络系统.zip

    5. **修饰符**:根据需要选择合适的修饰符,如public、private或protected,以控制方法的可见性和访问权限。 总的来说,定义方法时需要遵循正确的语法规则,注意方法的定义位置、方法名及参数列表、返回值类型、...

    2024 毕业设计 源码 物流配货网.zip

    5. **修饰符**:根据需要选择合适的修饰符,如public、private或protected,以控制方法的可见性和访问权限。 总的来说,定义方法时需要遵循正确的语法规则,注意方法的定义位置、方法名及参数列表、返回值类型、...

    最全java考试简答题

    在访问控制方面,`protected` 介于 `public` 和 `private` 之间。在编程中,`protected` 可以用于限制某些成员变量或方法的访问权限,以确 保数据的安全性和一致性。 final`: `final` 也是 Java 中的一个关键字,它...

    广东工业大学Java期末考试卷

    4、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C.static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    11.3.1 方法的访问控制符 298 11.3.2 public:没有限制的修饰符 299 11.3.3 protected:仅对子类和同包的类可见 300 11.3.4 默认控制符:仅在本包中可见 301 11.3.5 private:仅对本类可见 303 11.3.6 理解4个...

    Java常用关键字总结

    1、protected 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。 2、可以在声明 protected 类、方法或字段的类、同一个包中的其他任何类以及任何子类(无论子类是在哪个包中声明的)中引用...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    11.3.1 方法的访问控制符 298 11.3.2 public:没有限制的修饰符 299 11.3.3 protected:仅对子类和同包的类可见 300 11.3.4 默认控制符:仅在本包中可见 301 11.3.5 private:仅对本类可见 303 11.3.6 理解4个...

    php5 类与对象

    PHP 类的访问控制与封装 public,protected,private 修饰符 8. PHP 自动加载类 __autoload() 方法 9. 范围解析操作符(::) 10. PHP 类的静态成员属性与静态方法 static 关键字 11. PHP 常量(const) 12. PHP ...

    Java入门教程(微学苑)-part1

    3.11 如何使用访问控制符 47 3.12 Java变量的作用域 48 3.13 Java this关键字详解 49 3.14 使用this区分同名变量 49 3.15 作为方法名来初始化对象 50 3.16 作为参数传递 51 3.17 Java方法重载 52 3.18 Java类的基本...

Global site tag (gtag.js) - Google Analytics