设计一个在线教育知识付费源码系统(面向对象设计)。
解决方案:假设我们想要设计一个基本的内容付费阅读系统并带小程序,提供以下功能:
•查找知识数据库并阅读付费内容;
•用户成员的创建和扩展;
•基于用户分级权限管理,并且这个用户只能获权后阅读。
仓库完整源码:zs.xcxyms.top
类OnlineReaderSystem代表程序的主体。我们可以实现这个类,让它存储有关所有涉及用户管理的权限分级的信息,并刷新显示,但这会使这个类变得相当庞大。相反,我们选择将这些组件拆分成Library、UserManager和Display类。
类:
1、用户
2、知识
3、UserManager
4、OnlineReaderSystem
代码如下:
import java.util.HashMap;
/*
* This class represents the system
*/
class OnlineReaderSystem {
private Library library;
private UserManager userManager;
private Display display;
private Book activeBook;
private User activeUser;
public OnlineReaderSystem()
{
userManager = new UserManager();
library = new Library();
display = new Display();
}
public Library getLibrary()
{
return library;
}
public UserManager getUserManager()
{
return userManager;
}
public Display getDisplay()
{
return display;
}
public Book getActiveBook()
{
return activeBook;
}
public void setActiveBook(Book book)
{
activeBook = book;
display.displayBook(book);
}
public User getActiveUser()
{
return activeUser;
}
public void setActiveUser(User user)
{
activeUser = user;
display.displayUser(user);
}
}
/*
* We then implement separate classes