سؤال

For example, I have two classes:

class Foo
{
  protected void say() {...};
}

class Bar extends Foo {.....}

Can I somehow allow the "say" method to be called only from the Bar and other derived classes, but not from the other classes in Foo's package.

هل كانت مفيدة؟

المحلول

No, protected mean, protected member can be accessed in the same package and all subclasses in any package. If you want to restrict the access in package level, move that class into a separate package.

نصائح أخرى

There's no such accessor in Java that meet your needs, and AFAIK it's not possible to implement that restriction (in a simple way, that is, and besides Kugathasan's solution).

There isn't a way how you can do this in java.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top