精华内容
下载资源
问答
  • 对于类的访问权限修饰符有
    2021-12-07 23:09:25

    1. 前言

     C++提供了三个修饰符来限定类成员的被访问权限,分别是public protected private. 通过限定访问权限,可以达到程序编写者想要解决的安全问题和权限问题。这种权限的设置对于安全是非常必要的。

    2. 不同修饰下的类成员被访问权限

    • public:被public修饰的类成员可以在任何地方被访问到。
    • protected:被protected修饰的类成员可以在类内部,子类内部和友元函数访问到。但不能通过类对象访问
    • private:被private修饰的类成员可以在类内部和友元函数访问到,但不能在子类和通过类对象访问。

    可以看出:
    protected和private的区别是:private修饰的不能被继承到子类种访问。
    protected和public的区别是:public修饰的可以直接通过类对象访问。

    3. 继承时的属性变化

      他们之间经过继承后的结合关系如下:

    publicprotectdedprivate
    publicpublicprotectedprivate
    protectedprotectedprotectedprivate
    privateprivateprivateprivate

    4. protected的作用

    加入基类中的某个函数,我们不想将其暴漏,所以不能设计为public,但又想在子类中能够访问到,这时就可以使用protected修饰,子类继承时可以访问到。

    更多相关内容
  • 父子可以是不同包 在不同包下面只有public 与 protected 可以访问,而且protected必须是在继承关系下才能够访问
  • java访问权限修饰符

    2022-04-24 22:19:01
    1、访问权限修饰符 访问权限修饰符:用于限制访问权限的。就是控制一些信息的访问限制,如面向对象的封装,不希望外部直接访问本的属性,就给它设为了private私有化,这就是访问权限。 修饰符\访问权限...

    1、访问权限修饰符

            访问权限修饰符:用于限制访问权限的。就是控制一些信息的访问限制,如面向对象的封装,不希望外部类直接访问本类的属性,就给它设为了private私有化,这就是访问权限。

    修饰符\访问权限范围

    同一个类

    同一个包的不同类中

    不同包的子类中

    同一个项目中

    private

    可见(不能修饰类(外部类))

    default

    可见

    可见(默认的/包级的,不用写修饰符)

    protected

    可见

    可见(不能修饰类(外部类))

    可见

    public

    可见

    可见

    可见

    可见

    可以使用访问权限修饰符来修饰:类、成员变量、成员方法。

    其实,在Java源代码文件中(.java)可以编写很多类,但是只能有一个类是被 public 修饰,且该类的类名和源文件名保持一致。

    展开全文
  • 访问权限修饰符: 由小到大—private –default—protected—public Private: java语言中访问权限限制最窄的修饰符,一般称之为”私有的”,被其修饰的,属性,以及方法只能被该的对象访问,其子类不能访问,更不...

    访问权限修饰符:

        访问权限由小到大—private –default—protected—public

       ①Private:

          java语言中访问权限限制最窄的修饰符,一般称之为”私有的”,被其修饰的类,属性,以及方法只能被该类的对象访问,其子类不能访问,更不允许跨包访问.

    public class Main {
    
        public String name;    //public修饰的公共类型成员变量
        public int age;
    
        public Main(){   //public修饰的公共类型构造方法
    
        }
        public void run(){   //public修饰的公共类型成员方法
            System.out.println("人跑步");
        }      //public修饰的公共类型成员方法
    }

       ②Default:

         即不加任何访问修饰符,通常称为”默认访问模式”,即"默认型",该模式下,只允许在同一个包中进行访问.

      ③Protected:

        介于public和private之间的一种访修饰符,一般称之为”保护型”,被其修饰的类,属性以及方法只能被该类本身的方法及子类访问,即使子类在不同的包中也可以访问.

     ④Public:

        java语言中访问限制最宽的修饰符,一般称之为”公共的”,被其修饰的类,属性及方法,不仅可以跨类访问,而且允许跨包(package)访问

    修饰权限图片助解

     

    展开全文
  • 访问权限修饰符有public protected public 还有默认的default public:共有的,就和我们平时的公共场合一样,毫无疑问,这是每个人都能来的,来者不拒,每个人都平等的机会来这,在Java中,也是这样,只要是被...

    类的访问权限修饰符有public protected public 还有默认的default

    public:共有的,就和我们平时的公共场合一样,毫无疑问,这是每个人都能来的,来者不拒,每个人都有平等的机会来这,在Java中,也是这样,只要是被public所修饰的属性方法等,无论是本类、子类、同一个包下,还是不在一个包都能被访问

    protected:受保护的,字面意思我们就知道,他肯定不像public那样来者不拒,而是被一些事物保护的,所以,protected所修饰的属性方法等可以被本类、子类、同一个包访问,对于外来人员,是拒之门外的,不见陌生人

    default(修饰包):默认的,他的权限较之protected又有点低了,平时我们也不太使用这个访问权限符,defaul修饰方法可以被本类、同一个包访问

    !!!default不能修饰变量

    private:私有的,当然只能给自己看,所以private修饰的方法属性只能被本类访问,也更好地将我们的属性方法等封装起来,表现面向对象的有点,给使用者减少了困难

    为了能清楚地区分这几个修饰符,我整理了一张表出来
    在这里插入图片描述
    这里我们谈谈private,既然private修饰符修饰的属性只能被本类成员访问,那是不是我们用private修饰属性的时候,我们类的调用者是不是就不能使用这个被private修饰的属性了呢?

    答案是NO

    概念肯定是正确的,就是说被private修饰的属性只能被本类成员访问,可是当我们类的调用者需要使用时,我们可以转换一下,转换成被本类访问不就可以了吗
    我们直接拿代码看

    class Person{
    	private String name = "张三";
    	private int age = 18;
    	public void show(){
    		System.out.println("我叫" + name + ", 今年" + age + "岁了");
    	}
    }
    public class Test{
    	public static void main(String[] args){
    		Person person = new Person();
    		person.show();
    	}
    }
    //执行结果
    我叫张三,今年18岁了
    

    在这份代码中,属性 name , age 被 private 修饰,如果我们直接用 person.name 或者 person.name 肯定是不通过的,但是 show 是个公有方法,可以使用,所以我就想在 show 中访问属性,打印出来,所以问题就变成怎么访问 show 方法,show 是公有方法,我们直接通过引用.方法名称调用即可

    可是,问题又来了,如果我想修改被 private 修饰的属性的值时,该怎么办呢?这里,Java为我们提供了 getter 和 setter 方法

    class Person{
    	private String name;
    	private int age;
    	public void setName(String n){
    		name = n;
    	}
    	public String getName(){
    		return name;
    	}
    }
    public class Test{
    	public static void main(String[] args){
    		Person person = new Person();
    		person.setName("caocao");
    		System.out.println(person.getName());
    	}
    }
    //执行结果
    caocao
    
    • setName 为setter 方法,表示设置成员的值
    • getName 为getter 方法,表示获取成员的值
    展开全文
  • 四种访问权限修饰符

    千次阅读 2021-09-02 21:02:51
    对于类的成员(属性和方法)而言,4 种访问权限修饰符都可以使用。下面按照权限从小到大的顺序(即 private < default < protected < public)对四种访问权限修饰符分别进行介绍。 私有权限 private ...
  • 一、是哪四种访问权限修饰符呢?|public > protected > [default] > private(公共的 ) (受保护的) (默认的) (私有的) ||:----|二、简单认识四种访问修饰符1、public权限修饰符public——可以修饰,方法,...
  • 访问权限修饰符[java]

    千次阅读 2022-02-28 19:43:11
    Java语言四个权限访问修饰符权限从大到小依次为: 1)public :公共权限,可以被任意类访问,不同包不同类依然可以访问 可修饰:类、成员变量、方法,内部类 2)protected:受保护的权限,可以被同包类访问,...
  • 访问权限修饰符详解(public,private,protected和friendly(默认)) 在Java语言中提供了多个作用域修饰符,其中常用的public,private,protected,final,abstract,static,transient和volatile,这些修饰符有类...
  • 访问权限修饰符有四个:public protected 【default】(又叫默认权限修饰符) private 访问权限修饰符可以修饰的元素: 1. 只有public abstract和final能够修饰,或者不加【private和protected可以修饰内部】 ​...
  • Java权限修饰符

    千次阅读 2021-09-03 14:39:59
    转载自:郭小白 一、Java的修饰符的分类: 权限修饰符:public、默认(包访问权限)、protected、private ...修饰成员:对于一个类,其成员能否被其他类访问,取决于该成员的权限修饰符。在Java中,
  • Java中4种访问权限修饰符

    千次阅读 2018-06-10 22:26:09
    在Java编程语言中四种权限访问控制,这四种访问权限的控制能够控制中成员的可见性。 一、public (1)定义:public是公共的,被public所修饰的成员可以在任何中都能被访问到。 (2)修饰的成分: public能...
  • 访问权限 public protected default private 同一个 yes yes yes yes 同一个包 yes yes yes no 子类 yes ...
  • 1)public:公开的,任何  2)private:私有的,本  3)protected:受保护的,本、子类、同包  4)x默认的:什么也不写,本、同包  访问修饰: public和默认的  中成员的访问修饰: 如上4种都可以...
  • 四种,分别是private、default、protected、public。...default:即不加任何访问权限修饰符,通常称为“默认访问权限”或者“包访问权限”。该模式下,只允许在同一个包中访问。protected: 介于public...
  • PHP中三种访问修饰符,分别是: public(公共的、默认) protected(受保护的) private(私有的) 它们可以分别用在的属性和方法上(的属性和方法统称为的成员),用来修饰成员的访问权限。 public(公共的...
  • java的访问修饰符有四种:private、protected、public、default. 这四种访问修饰符访问权限不一样。 java修饰符访问权限 修饰符 所在 同一个包内其他 其他包内子 其他包内非子类 缺省...
  • Java中的权限修饰符

    2021-02-28 15:48:16
    public:允许所有外部类访问使用publicprotected:允许子类和同包类访问使用protectedprivate:只能自己访问使用private权限排序:访问权限修饰符权限从高到低排列是public,protected,friendly,private。 1.私有权限...
  • Java四种访问权限, 其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符。 private: Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的、属性以及...
  • 权限修饰符

    2022-05-01 18:31:16
    可以修饰成员变量,方法,构造器,,不同权限修饰符有不同的访问权限! 2.权限修饰符的访问范围:✔ 同一个中 同一个包中其他 不同包中子类 不同包中无关 public ✔ ✔ ✔ ✔ protected ✔
  • 访问权限修饰符的访问权限从高到低为:public > protected > (默认的) > private (其中默认的就是什么都没有) 访问权限修饰符使其对应的方法和属性的访问范围: public :同包,不同包都能被访问。 如:...
  • 首先了解一下概念:在java中四种权限修饰符:范围从大到小分别是:public、protect、default(friendly)、private,它们之间的区别是:public:Java语言中访问限制最宽的修饰符,一般称之为“公共的”。被其修饰的...
  • 一(访问修饰符) 在Java中,针对,成员方法和属性提供了4种访问级别,访问级别由大到小分别为:public---protected---default---private。 public:公共访问级别,如果一个或者的成员被public访问控制符...
  • 访问权限修饰符 公有 public 私有 private 保护 protected 默认 default 权限修饰符 权限修饰符 私有private 默认default 保护protected 公有 public 只有内部允许私有,只能在当前中...
  • 2、default修饰的成员方法或者成员变量只能被本包中的类访问。 3、protected修饰的成员方法或者成员变量只能被本包中的类和不同包中的子类访问。 4、public修饰的成员方法或者成员变量可以被所有包中的所有类访问...
  • Java 语言中四种权限访问控制,能够控制中成员变量和方法的可见性。public被 public 修饰的成员变量和方法可以在任何中都能被访问到。被 public 修饰,在一个 java 源文件中只能一个被声明为 public...
  • 访问权限修饰符通常位于语句最前端,用于定义、方法及变量 举例说明: public class Demo { private String name; double score; protected void funny(){ } } 四种访问权限修饰符 **private(私有):**被...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 102,179
精华内容 40,871
热门标签
关键字:

对于类的访问权限修饰符有