我通常会发现自己将类的常见行为提取到帮助程序/实用程序类中,该类只包含一组静态方法。我经常想知道是否应该将这些类声明为抽象类,因为我真的想不出实例化这些类的有效理由吗?
将这样的类声明为抽象将是什么利弊。
public [abstract] class Utilities{
public static String getSomeData(){
return "someData";
}
public static void doSomethingToObject(Object arg0){
}
}
所以我有两个类。一个只有纯粹的虚拟函数。另一个实现了这些函数,并从第一个类派生出来。我知道我不能实例化第一个类。但是当我试图创建第二个类的对象时,它也失败了。 我的第二节课大体上是这样的: 执行: 下面是我如何实例化它并得到错误: 我哪里做错了? 第一课
问题内容: 抽象类是否必须至少具有一个抽象方法? 问题答案: 这篇文章的主题和正文提出了两个不同的问题: 它应该至少有一个抽象成员吗? 是否需要至少一个抽象成员? #2的答案肯定是“否”。 #1的答案是主观的,是风格的问题。我个人会说是的。如果您的目的是防止实例化一个类(没有抽象方法),那么最好的方法是使用构造函数,而不是对其进行标记。
问题内容: 我创建了一个空的抽象类,并从中继承了该类: 我期望输出是 但是,我得到的是 如果我删除(这样就变成一个普通的类)和/或如果我设置了其他值,问题(显然)就消失了。 这里发生了什么? 问题答案: 这实际上不是ABC的问题,而是PyMongo的问题。有一个关于它的问题在这里。似乎pymongo重写以返回某种数据库类。这意味着将返回一个数据库对象,该对象在布尔上下文中为true。这使ABCMe
问题内容: 假设我有一个实用程序类DateUtil(请参见下文)。若要使用此方法,调用者方法将使用DateUtils.getDateAsString(aDate)。删除static修饰符并使DateUtil成为spring bean(请参见DateUtilsBean)并将其注入到调用类中还是将其保持原样会更好吗? 春豆版本 问题答案: 我不这么认为。DateUtils类听起来像是一个纯实用程序类,
Azure应用程序服务(特别是应用程序服务计划)是否提供内存抽象? https://azure.microsoft.com/en-us/pricing/details/app-service/ 如果我创建一个具有2个标准倾斜实例(1个CPU 1.75 giga字节内存)的应用程序服务,这是否意味着我有2*1.75 giga字节内存可供我的应用程序使用?例如,我可以在该计划中创建一个堆大小为2 gi
这似乎是一个基本问题。但在采访前需要澄清。 我在抽象类中有一个非抽象方法。它的具体类重写了该方法。但我想调用父类的原始方法来调用,而不是重写方法。有什么办法吗? 据我所知,没有办法调用原始方法?