我可以限制另一个类可以在Java中调用的方法吗?
发布于 2021-01-30 17:29:08
假设我有类A
,B
并且C
其中的类C
具有可读和可写的属性:
public class C {
private int i = 0;
// Writable.
public void increment() { i++; }
// Readable.
public int getScore() { return i; }
}
是否可以只A
使用该increment()
方法而只B
使用该getScore()
方法?
关注者
0
被浏览
72
1 个回答
-
不可以,无法分配每个类别的访问权限。
考虑将您的类分为单独的接口,以便每个类仅获得一个具有所需接口的对象。例如:
interface Incrementable { public void increment(); } interface HasScore { public int getScore(); } class C implements Incrementable, HasScore { /* ... */ } class A { public A(Incrementable incr) { /* ... */ } } class B { public B(HasScore hs) { /* ... */ } }
当然,这涉及安全性,但这应该使您朝正确的方向进行思考。
推荐阅读
-
我可以将方法作为Java中另一个方法的参数传递吗?
2021-01-30 关注 0 浏览130 1答案
-
我们可以在Eclipse中从我们的项目中调用另一个项目Java类吗
2021-01-30 关注 0 浏览75 1答案
-
Java从另一个类调用方法
2021-01-31 关注 0 浏览159 1答案
-
我可以将类方法作为默认参数传递给另一个类方法吗
2021-01-29 关注 0 浏览98 1答案
-
在Java中,我可以合并两个使用JspWriter和另一个PrintWriter的相似函数吗?
2021-02-01 关注 0 浏览138 1答案
-
一个 AngularJS 控制器可以调用另一个吗?
2022-03-22 关注 0 浏览28 1答案
-
一个AngularJS控制器可以调用另一个吗?
2021-02-02 关注 0 浏览133 1答案
-
我可以在属性文件中引用另一个属性(使用$ {property})吗?
2021-01-30 关注 0 浏览73 1答案
-
一个 AngularJS 控制器可以调用另一个吗?
2022-03-22 关注 0 浏览33 1答案
-
我们可以在另一个 JS 文件中调用用一个 JavaScript 编写的函数吗?
2022-07-28 关注 0 浏览16 1答案