java的访问权限protected和default】的更多相关文章

protected和default的区别 第一点:在同一个包中,protected和default表现一致,即,当main方法所在的类和使用了protected与default修饰属性.方法的类在同一个包下面时,可以直接通过类对象调用被修饰的属性和方法.在同一个包中发生的继承,protected和default表现同样一致. 第二点:当main方法所在的类与使用了protected和default修饰属性.方法的类在不在同一个包下面时,使用其他包的类创建的对象无法直接调用被default修饰的方…
在不同包,子类继承后可以使用父类的protect权限的属性或方法 父类: package com.tinyphp; public class Father { protected String name; } 子类: package com.test; import com.tinyphp.Father; class Child extends Father { void read(){ name="tinyphp"; System.out.println(name); } } 调用:…
访问权限四大类:权限从大->小 1.public:   公共权限 2.protected:  受保护权限 3.default: 包级别访问权限/默认权限 4.private:   私有权限 以public为例,使用方法如下: public class Test{ public int i; public void fun(){ } } public ->在同一个包或不同的包中的类可以自由访问. 可以修饰类.成员变量和成员函数 Test.java class Test { public stat…
Java中访问权限控制的作用: 为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分. 为了让类库设计者可用更改类的内部工作方式,而不必担心会对用户造成重大影响. 包(package) Java中包(package)的概念和C++中命名空间(namespace)的概念很类似,都可以限制类的作用域.二者最大的差别在于,Java中的包隐式地指明了类的树形层级结构(同时也是Java源码文件的目录结构).这样做的好处在于:可以通过文件系统…
一.访问权限修饰词 关键字 名称 本类 同一包中的类 子类 其他包中的类 public  接口访问权限 √ √ √ √ protected 继承访问权限 √ √ √ x 默认 包访问权限  √ √ x x private 无法访问权限 √ x x x 二.类的访问权限 1.访问权限修饰词可以用于类 修饰词必须出现在class之前 2.每个编译单元(单个class文件)都只能有一个public类   public类名称必须完全与含有该编译单元的文件名相匹配 编译单元可能不带public类 3.类的…
import packa.*;//导入了packa包中所有的类.(不包括包中的子包)一般不会用,用哪个导入哪个. 导包的原则:用到哪个类,就导入哪个类.所有字母都小写. 权限列表:   public protected default private 同一类中 ok ok ok ok 同一包中 ok ok ok   子类中 ok ok     不同包中 ok       由上表可以看出: private:只供类内部使用,同一包都不行: default:默认的访问权限只提供同一类和同一包,子类不行…
Java使用三个关键字在类的内部设定访问权限:public.private.protected.这些访问指定词(access specifier)决定了紧跟其后被定义的成员(方法或属性)可以被谁使用.public表示紧随其后的元素对任何人都是可用的,而private这个关键字表示除类型创建者(类内部访问)和类型的内部方法之外的任何人都不能访问的元素.private就像你与客户端程序员之间的一堵砖墙,如果有人试图访问private成员,就会在编译时得到错误信息. Java还有一种默认的访问权限,当…
Java有四种访问权限, 其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符. private: Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”.被其修饰的类.属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问. default:即不加任何访问修饰符,通常称为“默认访问模式“.该模式下,只允许在同一个包中进行访问. protect: 介于public 和 private 之间的一种访问修饰符,一般称之为“保…
public: 具有最大的访问权限,可以访问任何一个在classpath下的类.接口.异常等.它往往用于对外的情况,也就是对象或类对外的一种接口的形式. protected: 主要的作用就是用来保护子类的.它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西 default: 有时候也称为friendly,它是针对本包访问而设计的,任何处于本包下的类.接口.异常等,都可以相互访问,即使是父类没有用protected修饰的成员也可以. private: 访问权限仅限…
一.概要 通过了解Java4种修饰符访问权限,能够进一步完善程序类,合理规划权限的范围,这样才能减少漏洞.提高安全性.具备表达力便于使用. 二.权限表 修饰符 同一个类 同一个包 不同包的子类 不同包的非子类 Private √ × × × Default √ √ × × Protected √ √ √ × Public √ √ √ √ 三.说明 3.1 private 访问限制的最窄的修饰符,一般称之为"私有的".被其修饰的类.属性以及方法只能被该类的对象访问,其子类不能访问,更不能…
Java语言中有4中访问修饰符:friendly(默认).private.public和protected. public :能被所有的类(接口.成员)访问. protected:只能被本类.同一个包中的类访问:如果在其他包中被访问,则必须是该成员所属类的子类. private:成员变量和方法都只能在定义它的类中被访问,其他类都访问不到.对成员变量的进行获取和更改,一般用get(),set() ,public 方法.实现了Java面向对象的封装思想. friendly(缺省):访问权限与prot…
今天我们来探讨一下访问权限控制符. 使用场景一:攻城狮A编写了ClassA,但是他不想所有的攻城狮都可以使用该类,应该怎么办? 使用场景二:攻城狮A编写了ClassA,里面有func1方法和func2方法,但是他只想提供func1给别的攻城狮使用,应该怎么办? 此时,应该使用Java当中的访问权限控制符:1.默认访问权限 2.public 3.private 4.protected 注意,上述四种访问权限,只有默认访问权限和public能够用来修饰类.修饰类的变量和方法四种权限都可以.(本处所说…
JAVA 子类重写继承的方法时,不可以降低方法的访问权限,子类继承父类的访问修饰符要比父类的更大,也就是更加开放,假如我父类是protected修饰的,其子类只能是protected或者public,绝对不能是friendly(默认的访问范围)或者private,当然使用private就不是继承了.还要注意的是,继承当中子类抛出的异常必须是父类抛出的异常的子异常,或者子类抛出的异常要比父类抛出的异常要少. 1.private修饰词,表示成员是私有的,只有自身可以访问: 2.protected,表…
1.类成员的访问权限控制 Java中类成员的访问权限分为四类:private,无(默认情况下),protected和public.其权限控制如下表所示: 修饰词 本类 同一个包的类 继承类 其他类 private √ × × × 无(默认) √ √ × × protected √ √ √ × public √ √ √ √ 其中,类成员在默认情况下没有任何修饰词,这样的成员具有“包访问权”,即位于同一个包中的类对其有访问权:而protected为“继承访问权”,即该类的子类对其具有访问权(同时,位…
访问权限控制 没有权限控制的时候,由于所有的接口都是可以访问的.当一个类库部分代码,发现有更好的方法解决的时候,可能其他接口会发生改动.这会导致另一个地方的引用该类库的程序发生崩溃.为了解决这种问题,权限管理就显得尤为重要了. 在Java中提供了访问权限控制修饰词.以供类库开发人员向客户端程序员说明哪些功能是可以用的,那也有是不可以用的. 一.包:库单元 包内含有一组类,他们在单一的名字空间之下被组织到了一起 类名冲突?不存在的 在程序中,如果需要其他包的类,就需要导入. import java…
Java支持四种不同的访问权限: 修饰符 说明 public 共有的,对所有类可见 protected 受保护的,对同一包内的类和所有子类可见 private 私有的,在同一类内可见 默认的 在同一包内可见.默认不使用任何修饰符 1.public:public表明该数据域.方法是对所有用户开放的,所有用户都可以直接进行访问.  2.private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接访问,私有财产神圣不可侵犯嘛,即便是子女,朋友(同一包内的类),都不可…
package test06; public class PermissionModel { private int age; public String name; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.n…
default或者friendly表示默认的访问权限修饰符.…
public>protected>默认(包访问权限)>private,因为protected除了可以被同一包访问,还可以被包外的子类所访问…
一共有四种访问权限,对应四个范围 1.private :只有本类内可以使用,即使是子类也没权使用 2.protect :子类和友好类能够使用,继承中经常用到 3.默认值,(就是什么都没写),只有同包名下可以调用,包外不能被调用 4.public :任何地方都能调用,包括同包名,不同包名等 类的访问修饰符:只能是 public或默认不写两种,不能使用protect和private 类的成员:如图,逐层放宽…
修饰符         类内部     package内         子类         其他 public             允许         允许                 允许         允许 protected       允许         允许                 允许          不允许 default           允许         允许                 不允许       不允许 private    …
题目1: 在作业5的基础上,再创建一个柱体类,包含矩形对象.高和体积等三个成员变量,一个构造方法进行成员变量初始化,和计算体积.换底两个功能方法,在主类中输入长.宽.高,计算柱体体积,输入新的长.宽.高,创建新的矩形对象,并利用换底方法换底,再次计算柱体体积. 代码: 1.App.java /** * 主类,包含一个主方法; * 输出体积,调用矩形对象的修改器换底,换底后的体积; */ public class App { public static void main(String[] arg…
Java的访问权限控制修饰符,从最大权限到最小权限依次是:public.protected.包访问权限(默认,没有关键字)和private.对于类的访问权限只能是:public和包访问权限(但内部类可以是private或protected的):对于类中的成员的访问权限可以是上述的四种.下面是各种访问权限的作用. 一.public修饰的类: 作用域 当前类 同一package普通类 其他package普通类 同一package子孙类 其他package子孙类 public √ √ √ √ √ pr…
private,public,protected,默认不写(firendly) 1.Class类的访问权限: public:可以供所有的类访问. 默认:默认可以称为friendly但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++.默认的访问权限是包级访问权限.       即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即使可以实例化该类       (当然如果这个类不具有实例化的能力除外,比如该类没有提供public的…
人在什么面前最容易失去抵抗力? 美色,算是一个,比如说西施的贡献薄就是忍辱负重.以身报国.助越灭吴:金钱,算是另外一个,我们古人常说“钱乃身外之物,生不带来死不带去”,但我们又都知道“有钱能使鬼推磨”. 除去美色和金钱,我认为还有一个,就是读者的认可——“二哥,你的文章真的很棒,我特别喜欢.希望能多多更新Java基础知识,真的是受益良多,就好像是在读王小波的散文,但又学了编程!”——你说,收到读者这样暖暖的评语,还需要美色和金钱?“两者皆可抛”嘛. 这篇文章主要介绍一下Java的访问权限控制.…
包:库单元 包内包含有一组类,他们在单一的名字空间下被组织在一起. 通过import ***.***.*可以将某个包下的所有类导入到当前文件中. 每个Java源文件最多只能有一个public类,且名称必须与文件名相同.源文件中的其他类在包外事不可见的,主要用来为public类提供支持. Java的可运行程序是一组可以打包并压缩为一个Java文档文件(jar)的.class文件. package 和import可以将单一的全局名字空间分割开,使得无论多少人使用Java编写类,都不会出现名称冲突问题…
Java提供了public, private, protected 三个访问权限修饰词,提供了以下四种访问权限控制机制: 1.包访问权限: 2.Public访问权限: 3.Private访问权限: 4.Protected访问权限: 1.包访问权限 包访问权限是Java为了便于程序员开发而给定的一种权限选择. 当方法或域未给定访问权限限制符时,其默认具有该权限.具有该权限的方法和域成员,在包内是完全可见的(注意要与其对象依附在一起 ),而包外则不可见. 这有点类似于C++中友元类,友元类见彼此可见…
1.编译单元 一个 编译单元即 .java 文件 内只能有一个 public 类  且该文件名必须与public 类名 完全一致. 编译单元内也可以没有public类 文件名可随意. 2. 包:库单元 默认访问权限即包访问权限,同一包下可访问(指同一目录下各个.java文件中的包访问权限类或者类成员可相互访问). 父,子目录不属于同一包(其实没有什么父子目录,包名都是唯一的). 包可以看成类的集合,里面有public类 也有默认权限类,所以同一包下2个.java文件中不能有类同名. 要使用其他包…
四种访问权限: public private 包访问权限 protected 如果没有明确指定package,则属于默认包 package access.dessert; public class Cookie { public Cookie() { System.out.println("Cookie()"); } void bite() { System.out.println("bite"); } } class Demo { } //private clas…
对于java程序员来说,java的访问权限修饰词public.protected.default.private的区别和使用肯定都不是问题,这里也不再啰嗦了,反正度娘一搜就一大把.最近在整理java core的培训资料时,想到了几个关于权限修饰词的问题: 为什么类和接口(不考虑内部类和接口)不能使用private和protected修饰词,只能是public和default? 为什么接口的方法不能是private和protected,只能public(default可以写出来,但是编译之后自动转…