就Java而言,当有人问:
什么是多态?
将超载或重载是一个可以接受的答案?
我认为还有更多的东西.
如果您有一个抽象基类定义了一个没有实现的方法,并且您在子类中定义了该方法,那还是会覆盖吗?
我认为超载肯定不是正确的答案.
在定义使用不同过滤器返回相同形状数据的多个方法时,有什么更好的做法?显式方法名称或重载方法?
例如.如果我有一些产品,我从数据库中提取
明确的方式:
public List<Product> GetProduct(int productId) { // return a List }
public List<Product> GetProductByCategory(Category category) { // return a List }
public List<Product> GetProductByName(string Name ) { // return a List }
Run Code Online (Sandbox Code Playgroud)
重载方式:
public List<Product> GetProducts() { // return a List of all products }
public List<Product> GetProducts(Category category) { // return a List by Category }
public List<Product> GetProducts(string searchString ) { // return a List by search string }
Run Code Online (Sandbox Code Playgroud)
我意识到你可能会遇到类似签名的问题,但是如果你传递的是对象而不是基类型(string,int,char,DateTime等),这将不再是一个问题.所以...是一个好主意,重载的方法来减少你有方法和清晰的数字,或者应该 …