如果一个嵌套类需要在单个方法之外仍然是可见,或者它太长,不适合放在方法内部,就应该使用成员类。
2023-12-14 23:30:37
当一个嵌套类需要在单个方法之外仍然是可见,或者它太长不适合放在方法内部时,可以考虑使用成员类(成员内部类)。成员类是声明在类的内部但不是在方法内部的类,可以访问外部类的实例成员。
以下是一个示例,演示了成员类的用法。考虑一个 Team
类,其中包含一个成员类 Player
,表示球队的球员。在这个例子中,Player
类是 Team
类的成员类,因为它需要访问 Team
的实例变量,而且可能在单个方法之外被其他方法调用。
public class Team {
private String teamName;
private int foundedYear;
// 构造函数
public Team(String teamName, int foundedYear) {
this.teamName = teamName;
this.foundedYear = foundedYear;
}
// Getter 方法
public String getTeamName() {
return teamName;
}
public int getFoundedYear() {
return foundedYear;
}
// 成员类 Player
public class Player {
private String playerName;
private int playerNumber;
// 构造函数
public Player(String playerName, int playerNumber) {
this.playerName = playerName;
this.playerNumber = playerNumber;
}
// Getter 方法
public String getPlayerName() {
return playerName;
}
public int getPlayerNumber() {
return playerNumber;
}
// 访问外部类的方法
public void displayPlayerInfo() {
System.out.println("Team: " + getTeamName());
System.out.println("Founded Year: " + getFoundedYear());
System.out.println("Player: " + getPlayerName());
System.out.println("Player Number: " + getPlayerNumber());
}
}
// 其他 Team 类的方法...
}
在这个例子中,Player
类是 Team
类的成员类,因为它直接访问了 Team
的实例变量(teamName
和 foundedYear
)。displayPlayerInfo
方法演示了如何在成员类中访问外部类的实例方法和变量。
使用成员类的好处之一是,它能够更自然地表示两者之间的关系,并且在一些情况下,可以减少代码的重复性。在这个例子中,球队的球员天然地与球队相关联,因此将球员表示为球队的成员类是合适的。
文章来源:https://blog.csdn.net/wcg_jishuo/article/details/135005598
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!