标签: protected

我可以在Java中公开受保护的成员吗?我想从子类访问它

我是Java和OOP的新手,

我在A类中使用了一个私有子类(实际上是一个结构)B,一切顺利,直到我决定为子类B创建一个父类C.我希望公开C类的一些受保护成员.

例如:

public class A {
   private class B extends C {
       public int product;
       public int x;
       public int y;
       public void add() {
             product=x+y;
       }
   }
   B b=new B;
   b.x=1;
   b.y=2;
   b.multiply();
   System.out.println(b.product+"="+b.x+"x"+b.y);

public class C {
   protected int x;
   protected int y;
   public int sum;
   public C(px,py) {
       x=px;
       y=py;
   }
   public void sum() {
       sum=x+y;
   }
}
Run Code Online (Sandbox Code Playgroud)

我明白了

隐式超级构造函数C()未定义为默认构造函数.必须定义一个显式构造函数

当然,我可以删除扩展C,然后回到之前的状态.或者我可以做一个吸气剂/二传手.但我认为内部结构是可以接受的是可以理解的,它应该能够扩展其他类.

java class protected public

1
推荐指数
1
解决办法
675
查看次数

接口声明的访问说明符

为什么不能使用保护/私有访问说明符接口声明?

java private interface protected

1
推荐指数
1
解决办法
2803
查看次数

使用php的简单类

你好,我是PHP的新手,我需要帮助来理解PHP类的基础知识.

我想要一个使用私有公共保护和静态的类的示例.
他们是如何工作的..

提前致谢.

哦,我忘记了如何扩展.我在谈论父母和孩子的事情或者什么......再次感谢.

php static extends class protected

1
推荐指数
1
解决办法
131
查看次数

内部和私人api保护

我在大约12岁的开发团队工作,我们构建了一套合理的API,我们仅在内部严格使用.通常,所有类和接口都是公共的,因为这就是它们的完成方式.我经常考虑将一些构造函数设置为内部的价值,以便API的消费者(尽管是内部的)必须使用工厂或我现在想不到的其他一些原因.

这是你和你的团队练习的东西吗?

这对您的单元测试有何影响?你是否发现通过它的工厂对一个类进行单元测试是可以的,还是通过像PrivateObject这样的东西来访问构造函数?

c# api-design protected internal

1
推荐指数
1
解决办法
501
查看次数

C++虚拟+受保护?

在C++中,我有一个基类A,一个子类B.它们都有虚拟方法Visit.我想重新定义B中的"Visit",但是B需要访问每个A(以及所有子类)的"Visit"函数.

我有类似的东西,但它告诉我B不能访问受保护的A成员!但B也是A :-P

那么,我该怎么办?

class A
{
protected:
virtual Visit(...);
}

class B : public class A
{
protected:
vector<A*> childs;
Visit(...);
}

B::Visit(...)
{
 foreach(A* a in childs)
 {
   a->Visit(...);
 }
}
Run Code Online (Sandbox Code Playgroud)

谢谢

c++ virtual class protected

1
推荐指数
1
解决办法
7828
查看次数

Rails模型:受保护的方法?

    class demo
        protected 
        def method1
        end

        def methods2
        end
    end
Run Code Online (Sandbox Code Playgroud)

上面的语法会将这两种方法都视为受保护还是仅将其视为第一种

model protected ruby-on-rails-3

1
推荐指数
1
解决办法
268
查看次数

如果数组键受保护怎么办?

我有这种类型的数组: -
我想得到阵列elemtn.

context_course Object
 (
                     [_id:protected] => 15
                     [_contextlevel:protected] => 50
                     [_instanceid:protected] => 2 
                     [_path:protected] => /1/3/15 [_depth:protected] => 3 
)
Run Code Online (Sandbox Code Playgroud)

问题是[_id:protected]
我想要有价值15
如果元素是如何我得到的protected.
谢谢.

php arrays protected

1
推荐指数
1
解决办法
9231
查看次数

为什么我们在java中有受保护的访问说明符?

受保护是首选但不公开的示例情况是什么?有人可以用例子详细说明吗?我已经看过公共,私人和受保护的聊天(见这里).

java oop protected

1
推荐指数
1
解决办法
1157
查看次数

为什么我们不能在kotlin中将类的可见性标记为"受保护"?

我是kotlin的新手我最近在kotlin学习了继承,然后我意识到我们不能将类的可见性标记为"受保护".如果我错了,请纠正我,还是有其他办法让班级得到保护?

visibility class protected access-modifiers kotlin

1
推荐指数
1
解决办法
190
查看次数

如何将std :: unique_ptr <Parent>与只具有受保护虚拟析构函数的readonly Parent类一起使用

test.cpp,最小测试代码

#include <memory>
class Parent{ // A Interface That I can't modify! can't add 'friend' or modify 'protected'
protected:
    virtual ~Parent(){};
public:
    // other interfaces that no one is suitable for 'delete this'
};

class Derived : public Parent{ // My class
public:
    virtual ~Derived(){}
};

class Deleter : public Parent // My deleter to use unique_ptr
{
public:
    void operator()(Parent* ptr)
    {
        delete ptr; // Actually Wrong? cannot access ptr's protected & private member
    }
};

int main(int argc, …
Run Code Online (Sandbox Code Playgroud)

c++ virtual destructor protected unique-ptr

1
推荐指数
1
解决办法
151
查看次数