下面开始测试:
一个Test类,作为被访问的类,private就不说了,只有它自己才能访问,public是都能访问,这里主要来区分friendly和protected
新建两个类,Test1和Test2去访问Test,Test1和Test在同一个包中,Test2在其他包中
Test
package pp;
public class Test {
private void privateMethod(){}
void friendMethod(){}
protected void protectedMethod(){}
public void publicMethod(){}
}
Test1
package pp;
public class Test1 extends Test {
public static void main(String[] args) {
//同一包中,可以访问friendly,protected,public
new Test().friendMethod();
new Test().protectedMethod();
new Test().publicMethod();
}
//可以继承friendly,protected,public
@Override
void friendMethod() {
// TODO Auto-generated method stub
super.friendMethod();
}
@Override
protected void protectedMethod() {
// TODO Auto-generated method stub
super.protectedMethod();
}
@Override
public void publicMethod() {
// TODO Auto-generated method stub
super.publicMethod();
}
}
Test2
package qq;
import pp.Test;
public class Test2 extends Test {
public static void main(String[] args) {
//不同包中只能访问public,注意了!不同的包中,对于protected的方法,你可以继承它,但是你不能访问它!
new Test().publicMethod();
}
//不同包中,可以继承protected,public
@Override
protected void protectedMethod() {
// TODO Auto-generated method stub
super.protectedMethod();
}
@Override
public void publicMethod() {
// TODO Auto-generated method stub
super.publicMethod();
}
}
我觉得迷惑人的一点就是:不同的包中,对于protected的方法,你可以继承它,但是你不能访问它!其他的参考上面那个图就ok了
- 大小: 16.5 KB
- 大小: 5.7 KB
分享到:
相关推荐
访问权限修饰符分为四种:public、protected、friendly 和 private。每种修饰符都有其特定的访问权限和使用场景。 一、public 访问权限修饰符 public 访问权限修饰符表明该成员变量和方法是共有的,能在任何情况下...
方法的修饰符共有九种:public、private、protected、默认、static、final、abstract、native 和synchronized。 * public:任何包、任何类都可以访问。 * private:只能是自身类。 * protected:自身类、子类、同一...
本文主要分析了Java中常见的访问修饰符(public、private、protected、friendly/default)以及非访问修饰符(final、abstract、static、native)。我们将通过具体的例子和解析深入理解这些修饰符的作用。 首先,...
本文将深入探讨Java的访问控制修饰符,包括`private`、`default`(也称为`friendly`)、`protected`和`public`,以及它们如何影响程序的结构和安全性。 #### 访问控制修饰符:封装的基石 访问控制修饰符是Java语言...
Java提供了五种访问权限级别,分别是public、friendly(或称为default)、private和protected。下面将详细解释这些访问权限的含义和使用场景。 1. **public**: - 成员(方法、变量):任何类在任何地方都能访问。...
Java 中的访问修饰符可以分为三大类:类的访问修饰符、属性的访问修饰符和方法的访问修饰符。每种修饰符都有其特定的访问权限和用途。 类的访问修饰符 Java 中有四种类的访问修饰符: 1. 缺省(friendly):同一...
这个修饰符常用于继承结构中,确保基类的一些成员对子类可见,但对外部世界隐藏。 除了访问修饰符,Java还提供了其他修饰符: - **static**:静态修饰符,用于声明类级别的成员,这意味着它们不属于类的实例,而是...
说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × ×
本文将详细讲解 Java 中的访问限定符,包括 public、private、protected 和默认访问权限的作用域。 public 访问权限 public 访问权限是最宽松的访问权限,表示该成员变量或方法可以被任何类访问,无论它在什么包中...
其中,最为基础且核心的概念之一便是作用域,具体包括`public`、`private`、`protected`以及默认(通常被非正式地称为`friendly`)。本文将深入探讨这四种作用域的具体含义及应用场景。 #### 二、作用域概述 - **...
主要有四种访问控制修饰符:`private`、`protected`、`public`和`default`,它们决定了代码的封装性和可访问性。下面我们将详细解释这四种修饰符的含义和使用场景。 1. `public`: - 公共访问修饰符`public`提供了...
- 缺省(无修饰符): 也称为package-private或者friendly,表示只能在同一包内的其他类访问。 - `class`: 关键字,用于声明类。 - `classname`: 类名,用于标识该类。 - `extends superclassname`: 表示继承父类,...
共有四种访问修饰符:`public`、`protected`、`default`(未指定访问修饰符时,默认访问级别)和`private`。 - **public**: 具有最大的访问权限,可以在任何地方被访问。它常常被用作类的公共接口,使得其他类能够...
* 无修饰符(默认的):public,private,protected 这个三个限定符不是必须写的。如果不写,则表明是“friendly”,相应的成分可以被所在包中的各类访问。 构造方法 * 构造方法主要有以下特点:(1)构造方法的...
访问修饰符 public/private/protected/friendly 的使用 访问修饰符在 Java 中主要用于控制类、方法、变量等成员的可见性。具体来说: - `public`:公共的,对所有类都开放。 - `protected`:受保护的,对于同一包...
其它对象对它的访问,访问权限所以有以下几种:private, protected, public, friendly。 1.8.2 对象 把类实例化,我们可以生成多个对象,这些对象通过消息传递来进行交互(消息 传递即激活指定的某个对象的方法以改变...
在Java中,类成员(如方法、变量)的访问控制可以通过四种不同的访问修饰符来限定:`public`、`private`、`protected`以及默认(也称为`friendly`或`package-private`)。这四种修饰符定义了类成员对外部的可访问性...
Java 中有四种访问修饰符:public、private、protected 和 friendly(默认)。每种访问修饰符都有其特定的访问权限范围。了解访问修饰符的作用域是 Java 开发中的基本知识。 2. ArrayList 和 Vector 的区别 ...
访问修饰符:`public`, `private`, `protected`, 默认访问级别(`friendly`) **概述:** 在Java中,访问控制是通过四种不同的访问级别实现的:`public`, `private`, `protected` 和默认级别(通常称为`friendly`...