Protected和Default的区别

private :本类访问;
Default :默认,同包访问。
Protected:同包访问+子类访问
Public :所有均可访问。

Private和Public都好说,Default和Protected的区别在于:外包的子类,Default是不能访问的,而Protected确可以访问。

问题:

1 Private隐藏了不必要的数据(或方法),Public公开了必要的数据(或方法),Protected则将必要的数据(或方法)提供给了必要的类。

那么,将数据(或方法)开放(Protected)或不开放(Default)给子类的区别在哪里?这种设定的意义是什么?

Protected和Default的区别

时间: 2024-10-11 23:10:42

Protected和Default的区别的相关文章

java中权限修饰符public、private、protected和default的区别

1.public 可以修饰类.成员变量和成员函数,没有任何限制,同一个包中,或者不同包中的类都可以自由访问 2.private 可以修饰成员变量和成员函数,只能在本类中使用 3.default (不写权限修饰符,就是default权限)可以修饰类.成员变量和成员函数,在同一个包中,可以自由访问.如果子类和父类不在同一个包中,子类可以继承到父类中的default权限的成员变量和成员函数,但是由于权限不够,无法使用 4.protected protected权限首先拥有和default一样的功能,但

访问修饰符public,private,protected和default的区别?

类的成员不写访问修饰符默认为default,默认对于同一个包的其他类相当于公开(public),对于不是同一个包的其他类相当于私有(private). 受保护(protected)对子类相当于公开,对于不是同一个包没有父子关系的类相当于私有. Java中,外部类的修饰符只能是public或默认,类的成员(包括内部类)的修饰符可以是以上四种.

为什么类和接口不能使用private和protected?接口的方法不能使用private、protected、default

对于java程序员来说,java的访问权限修饰词public.protected.default.private的区别和使用肯定都不是问题,这里也不再啰嗦了,反正度娘一搜就一大把.最近在整理java core的培训资料时,想到了几个关于权限修饰词的问题: 为什么类和接口(不考虑内部类和接口)不能使用private和protected修饰词,只能是public和default? 为什么接口的方法不能是private和protected,只能public(default可以写出来,但是编译之后自动转

public、protected和private的区别以及__set()和__get()的用法

public.protected和private的区别 public       表示全局,类内部外部子类都可以访问; protected  表示受保护的,只有本类或子类或父类中可以访问; private      表示私有的,只有本类内部可以使用; 其中public具有全局性.继承性:protected具有被继承性:private只能被本类使用,不具有全局性和被继承性. __set()和__get()的用法 如果外部程序想要得到类内部的私有属性,例如private $name,可在类中定义一个

JAVA 中的权限访问修饰符(public,protected,default,private )

JAVA中有四个权限访问修饰符:public,protected,default,private 注意:这里讲的是对类中属性和方法的访问权限,并不是类的访问权限 1.default:包访问权限 如果什么也没写,默认为default.当然也可以显式得给出default权限 default修饰的属性和方法,包中的所有其他类对那个成员都有访问权限,但是对于这个包之外的所有类没有访问权限. 2.public: 接口访问权限 public修饰的属性和方法对每个类都是可见的 3.private:类内访问权限

public private protected和默认的区别(转自百度)

public private protected和默认的区别 Java中对类以及类中的成员变量和成员方法通过访问控制符(access specifier)进行区分控制.刚学Java语言的同学可能对public private protected以及默认(一般称包访问权限)的区别不是很清楚,尤其是protected和默认的区别.本篇经验就来说说这个事儿. 方法/步骤 1 private这个大家都知道,就是只有在本类中才能访问. 2 public正好和private相反,在任何地方都能访问. 3 p

[ES6]import 与export的用法 ,export 与export default 的 区别 以及用法

一.import 与export export(导出):用于对外输出本模块(一个文件可以理解为一个模块)变量的接口: import(导入):用于在一个模块中加载另一个含有export接口的模块. 1.一个a.js文件有如下代码: a.导出单个变量: export var name="李四"; b.导出多个变量: var name1="李四"; var name2="张三"; export { name1 ,name2 } c.导出函数: func

Java中的private、protected、public和default的区别

(1)对于public修饰符,它具有最大的访问权限,可以访问任何一个在CLASSPATH下的类.接口.异常等.它往往用于对外的情况,也就是对象或类对外的一种接口的形式. (2)对于protected修饰符,它主要的作用就是用来保护子类的.它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西. (3)对于default来说,有点的时候也成为friendly(友员),它是针对本包访问而设计的,任何处于本包下的类.接口.异常等,都可以相互访问,即使是父类没有用prote

Java中的public、protected、default和private的区别

(1)       对于public修饰符,它具有最大的访问权限,可以访问任何一个在CLASSPATH下的类.接口.异常等.它往往用于对外的情况,也就是对象或类对外的一种接口的形式. (2)       对于protected修饰符,它主要的作用就是用来保护子类的.它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西. (3)       对于default来说,有点的时候也成为friendly(友员),它是针对本包访问而设计的,任何处于本包下的类.接口.异常等,