精华内容
下载资源
问答
  • 2020-02-15 17:53:17

    可访问范围:
    public : 内部类、自身、子类、外部
    protected:内部类、自身、子类
    default:内部类、自身、
    private:内部类

    注:protected外部包不能访问,但是如果子类是在包外可以访问。

    更多相关内容
  • 下面小编就为大家带来一篇Java中的privateprotected、publicdefault的区别(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • C++public、protected和private区别

    千次阅读 2021-06-02 09:36:05
    C++public继承、protected继承和private继承的区别 学习C++这三个关键字是比较基础且常见的,下面先简单介绍下这三个关键字在类内的作用: public:公有的,说明声明在public后面的成员所有人都是可以使用的。 ...

    C++public、protected和private的区别

    在类中的区别

    学习C++这三个关键字是比较基础且常见的,下面先简单介绍下这三个关键字在类内的作用:

    1. public:公有的,说明声明在public后面的成员所有人都是可以使用的,比如一个公有成员变量可以直接使用该类的对象"."出来这个成员,如果这个成员是protected和private都需要通过public的函数来访问这个成员。
    2. protected:受保护的,类内和子类可直接访问,也就是说,基类中有protected成员,子类继承于基类,那么也可以访问基类的protected成员,要是基类是private成员,则对于子类也是隐藏的,不可访问。
    3. private:私有的,只有类内的成员函数才可以访问。

    在继承时的区别

    在继承时也可以使用这三个限制继承方式下面介绍下这三个关键字在继承时的作用:

    1.public:表示公有继承,特点是父类的public、protect成员属性在子类中保持不变但是父类的私有成员无法被子类直接访问。子类成员函数可以直接访问父类的public、protect成员,子类的对象只能访问基类的public成员。
    2. protected:表示保护继承,特点是基类的public、protect成员属性在子类中都会成为子类的protected成员。但是父类的私有成员无法被子类直接访问。子类成员函数可以直接访问父类的public、protect成员,子类的对象只能访问基类的public成员。
    3. private:私有继承,特点是基类的public、protect成员属性在子类中都会成为子类的private成员。但是父类的私有成员无法被子类直接访问。子类成员函数可以直接访问父类的public、protect成员,子类的对象只能访问基类的public成员。
    父类中的private成员从物理结构上来说确实是被子类继承了,但是子类是无法直接访问的,可以通过继承父类中访问父类私有成员的public或protected方法来访问父类的私有成员。

    以上内容均是作者查阅资料加自己理解,如有疑问,望读者不吝赐教,谢谢!

    展开全文
  • C++ Protected和Private区别

    千次阅读 2020-01-06 11:40:02
    主要区别在于派生类可以访问基本的Protected成员方法,而无法访问基本的private成员方法,其余是一样的。 实例代码 // VBaseTime.cpp : 定义控制台应用程序的入口点。 // STL标准库使用 #include "stdafx.h" #...
    • 主要区别在于派生类可以访问基本的Protected成员和方法,而无法访问基本的private成员和方法,其余是一样的。
    • 实例代码
    // VBaseTime.cpp : 定义控制台应用程序的入口点。
    // STL标准库使用
    
    #include "stdafx.h"
    #include <iostream>
    #include <string>
    #include <vector>
    #include <Windows.h>
    using namespace std;
    
    class Person{
    public:
    	Person(){
    		cout << "初始化Person" << endl;
    	}
    	~Person(){
    		cout << "释放" << endl;
    	}
    private:
    	void ShowPrivate(){
    		cout << "展示Private方法" << endl;
    	}
    protected:
    	void ShowProtected(){
    		cout << "展示Protect方法" << endl;
    	}
    };
    
    class Man: public Person
    {
    public:
    	Man(){
    		cout << "初始化Man" << endl;
    	}
    	~Man(){
    		cout << "释放Man" << endl;
    	}
    	void testDemo(){
    		ShowProtected();
    	}
    };
    
    void demo()
    {
    	unique_ptr<Man> mp(new Man());
    	//Man * mp = new Man();
    	mp->testDemo();
    }
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	demo();
    	system("pause");
    	return 0;
    }
    
    
    

    简单说明一下,创建了父类Person和子类Man,子类继承了父类的ShowProtected方法,中间也使用智能指针 防止内存泄漏问题
    运行结果:

    在这里插入图片描述

    展开全文
  • C++中public,protectedprivate区别

    千次阅读 2021-11-08 16:00:41
    在C++中一个类的成员的访问级别可分为public,protected和private。public的访问级别最低,谁都可以访问。 一个类的public成员变量、成员函数,可以通过类的成员函数、类的实例变量进行访问 protected访问级别中等...

    C++中public,protected,private个人总结为两种概念,一个宗旨。
    两种概念:
    概念一:静态的
    在C++中一个类的成员的访问级别可分为public,protected,和private。public的访问级别最低,谁都可以访问。
    一个类的public成员变量、成员函数,可以通过类的成员函数、类的实例变量进行访问
    protected访问级别中等,一个类的protected成员变量、成员函数,无法通过类的实例变量进行访问。但是可以通过类的友元函数、友元类进行访问。
    private访问级别最高, 一个类的private成员变量、成员函数,无法通过类的实例变量进行访问。但是可以通过类的友元函数、友元类进行访问。
    到这里我们发现似乎protectd和private没有什么太大的区别,但是主要区别在概念二中。
    概念二:动态的
    关于动态的,也就是动作的意义。其中包含父子继承的关系。也就是自类是如何继承父类的,是public继承,protected继承,还是private继承。
    (1)public继承
    派生类通过public继承,基类的各种权限不变 。
    派生类的成员函数,可以访问基类的public成员、protected成员,但是无法访问基类的private成员。
    派生类的实例变量,可以访问基类的public成员,但是无法访问protected、private成员,仿佛基类的成员之间加到了派生类一般。
    可以将public继承看成派生类将基类的public,protected成员囊括到派生类,但是不包括private成员。
    (2)proteced继承
    派生类通过protected继承,基类的public成员在派生类中的权限变成了protected 。protected和private不变。
    派生类的成员函数,可以访问基类的public成员、protected成员,但是无法访问基类的private成员。
    派生类的实例变量,无法访问基类的任何成员,因为基类的public成员在派生类中变成了protected。
    可以将protected继承看成派生类将基类的public,protected成员囊括到派生类,全部作为派生类的protected成员,但是不包括private成员。
    private成员是基类内部的隐私,除了友元,所有人员都不得窥探。派生类的友元,都不能访问
    (3)private继承
    派生类通过private继承,基类的所有成员在派生类中的权限变成了private。
    派生类的成员函数,可以访问基类的public成员、protected成员,但是无法访问基类的private成员。
    派生类的实例变量,无法访问基类的任何成员,因为基类的所有成员在派生类中变成了private。
    可以将private继承看成派生类将基类的public,protected成员囊括到派生类,全部作为派生类的private成员,但是不包括private成员。
    private成员是基类内部的隐私,除了友元,所有人员都不得窥探。派生类的友元,都不能访问

    具体实例请参考博客protected,public,private区别实例

    一个宗旨
    一个宗旨,就是,最终我们在解决实际开发问题的时候都要遵照类对象中所有成员的具体访问级别,进行访问,越级访问一定是不可以的。

    展开全文
  • private和protected区别_学习笔记

    千次阅读 2021-01-13 11:31:21
    在类外如果想使用类中的成员,只能直接使用public类型的,protected和private都是不能访问的,对于类外而言,这两个是完全相同的。 理解: private只有自己可以调用; protected: 有关系的类(派生类)也可以使用; 外包...
  • 类的protectedprivate区别

    万次阅读 2019-01-24 17:17:47
    类成员的访问限制是通过在类主体内部对各个区域标记 public、privateprotected 来指定的。关键字 public、privateprotected 称为访问修饰符。 一个类可以有多个 public、protectedprivate 标记区域。每...
  • C++ private protected类型的区别

    千次阅读 多人点赞 2019-04-28 15:47:34
    用例子说明: class Entity { public: ...private: int X, Y; }; class Player: public Entity { public: Player() { } private: }; int main() { Entity e; std::cin.get(); } 如上,En...
  • 3、protectedprotected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。互为友好关系的类。 扩展资料: 三种类型的继承,父类的成员均被子类...
  • private和protected区别

    万次阅读 多人点赞 2018-08-08 13:23:20
    在类外如果想使用类中的成员,只能直接使用public类型的,proteced和private都是不能访问的,对于类外而言,这两个是完全相同的。 不能把私有数据的地址或引用泄露出去,外部可以改变私有数据的值。 ...
  • 三种访问权限 public:可以被任意实体访问 protected:只允许子类及本类的成员函数访问 private:只允许本类的成员函数访问 三种继承方式 public 继承 ...protectedprotected继承 => protected protecte
  • 初学C++的朋友经常在类中看到public,protectedprivate以及它们在继承中表示的一些访问范围,很容易搞糊涂。今天本文就来十分分析一下C++中public、protectedprivate用法。相信对于大家深入掌握C++程序设计会有...
  • Private和Protected区别

    千次阅读 2019-08-27 13:42:39
    首先这两个都是访问类中成员权限的限制符。 private是完全私有的,只有自己...在类外如果想使用类中的成员,只能直接使用public类型的,proteced和private都是不能访问的,对于类外而言,这两个是完全相同的。 ...
  • public、privateprotected区别

    万次阅读 多人点赞 2021-05-10 14:24:03
    自身类派生类可以访问相当于自身的private型成员,它同private区别就是在对待派生类的区别上。 C++中 public,protectedprivate 访问标号小结 第一:private, public, protected 访问标号的访问范围。 ...
  • Ruby 为您提供了三个级别的实例方法保护,分别是 public、privateprotected。 Public 方法: Public 方法可被任意对象调用。默认情况下,方法都是 public 的,除了 initialize 方法总是 private 的。 Private ...
  • java中public/private/protected的具体区别

    千次阅读 2021-12-07 09:47:34
    java中public/private/protected的具体区别 public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用 privateprivate表示私有,私有的意思就是除了class自己之外,任何人都不可以...
  • 最近H5项目繁忙,没空写...这就是我对它的一个印象;废话少说,PHP中private和public还有protected区别:顾名思义,如果你有记得高中英语,那么就很容易理解这三个单词的意思了,①:public 表示全局,类内部外部子类...
  • c++ public和protectedprivate区别

    千次阅读 2020-05-16 08:59:32
  • JAVA中public/private/protected的具体区别

    千次阅读 2019-08-24 13:51:02
    1、public:public表明该数据成员、成员函数是对所有用户...3、protectedprotected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。 三种类型...
  • Ruby类下对访问控制的限制也是用public,protected和private来做的。虽然用的是C++Java相同的名字,但是Ruby下的protected和private定义还是有所不同的。
  • 今天小编就为大家分享一篇关于Java的外部类为什么不能使用private和protected进行修饰的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • public、protectedprivate和default都是java中的访问控制符其访问权限如下:public: 具有最大的访问权限,可以访问任何一个在classpath下的类、接口、异常等等。它往往用于对外提供调用的形式。protected:主要用来...
  • 重点关注privateprotected public 默认即为public,全局都可以访问,这个不解释 private C++, “private” 意为 “private to this class”, 但是Ruby中意为 “private to this instance”. 意思是:C++中,对于类...
  • private public修饰符很常见,很多人对protected和default的权限产生疑惑: 第一点:在同一个包中,protected和default表现一致,即,当main方法所在的类使用了protected与default修饰属性、方法的类在同一个包...
  • 简单总结如下
  • ts类中的private和protected区别

    千次阅读 2019-09-25 16:54:33
    ts类中的private和protected区别 private 私有的。表示最隐私,最不能为外人知道的。 在类中如果声明一个属性为私有,则表示这个属性仅仅属于这个类。 仅仅能在这个类中进行在这个属性的访问。在子类类的实现的...
  • PHP protected private 的用法

    千次阅读 2019-05-21 13:25:08
    1.都不能通过对象直接调用。 2.protected只能通过parent::或者 this->调用 3.private只能通过this->调用 4.public则没有任何访问限制
  • public、privateprotected访问权限差别
  • 1,public:对所有用户开放,所有用户都可以直接进行调用...2,private:只能在本类中使用,其他类都不可以直接使用。 3,protected:对于继承该类的方法没有任何限制可以自由使用,而其他的外部类则无法使用。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,142,165
精华内容 456,866
关键字:

protected和private区别