我理解日期是如何工作的,有一个例外,有没有办法从日期周期中找出有多少个区间?
例如:
// define the period of the range
$period = new DatePeriod($begin, $rangeType, $end);
// iterate through the dates in range
foreach ( $period as $dt ) {
}
Run Code Online (Sandbox Code Playgroud)
这是我想从上面的代码做的事情:
echo count($period);
Run Code Online (Sandbox Code Playgroud)
基本上我想知道foreach循环结束运行的时间.
如果我有一个基类
Base thing = null;
,其中有一个子类
class Subclass extends Base
,我就是
thing = new Subclass
如何调用一个特别在Subclass中的方法,而不是在Base中?恩.
Base只有method()
Subclass具有method()与specialMethod()
该方法specialMethod()是一个我想打电话.
我有一个存储应用程序上下文信息的应用程序 应用程序上下文信息在MyApp类中的活动之间共享,该类扩展了Application类.
我正在为我的活动编写单元测试,我想检查当用户单击活动中的按钮时,应用程序状态将发生变化.像这样的东西:
@Override
public void onClick(View pView) {
((MyApp)getApplicationContext()).setNewState();
}
Run Code Online (Sandbox Code Playgroud)
问题是我不知道如何模拟该应用程序上下文.我使用ActivityUnitTestCase作为测试用例库.当我调用setApplication时,它会更改Activity类的mApplication成员的值,但不会更改应用程序上下文的值.我也尝试过setActivityContext,但它似乎不对(它不是应用程序上下文而是活动上下文)并且它在startActivity中触发断言).
所以问题是 - 如何模拟getApplicationContext()?
继续这个问题:为什么不能降低Java子类中方法的可见性?
我需要创建B几乎与类相同的类A,除了B不能做某些事情A.
作为一个懒惰的程序员,我试图继承A,只是为了迎接错误,B不能降低A方法的可见性.咄!..
现在A是来自供应商的API,我的目的是封装此API,以便更容易使用.
我想知道解决这个问题的最佳做法是什么?
我正在考虑Hibernate管理的类层次结构的表布局,当然每个子类技术的表格在一般意义上都是最合适的.但是,通过逻辑思考我对其性能有一些担忧,特别是随着子类数量的增加.
为了给出一个非常简短(和经典)的例子,假设您有以下类:
public abstract class Animal {
int pkey;
String name;
}
public class Dog extends Animal {
long numSlippersChewed; // int is not large enough...
}
public class Cat extends Animal {
short miceCaught; // ... but here int is far bigger than required :-)
}
Run Code Online (Sandbox Code Playgroud)
(我正在消除getter和setter以及Hibernate映射等,只是假设它们是基本的明显情况).
这些实体的数据库表是有意义的,你得到了很好的非规范化等等.但是,Hibernate为了拔出一只动物做了什么查询呢?我可以想到至少有两种可能发生这种情况的情况:
pet字段Human.这将存储pkey,因此当Hibernate获取Human对象时,它也需要获取相应的Animal对象.当给出动物的密钥时,Hibernate将使用什么查询(/ ies)来提取和解组实际的动物数据,因为它可以驻留在Cat或Dog表中?from Animal where name='Rex'(让我们假设名称是唯一的).这类似于上面的内容,它允许您在超类表中标识一行,但您不知道要检查哪个子类表以获取更多详细信息.HQL甚至允许您from向抽象类发出查询吗?(尽管使用子类特定的东西很好地工作,例如from Cat where miceCaught > 5).我可以想到两种方法可以在SQL中完成,而且看起来都不漂亮.一种是exists在给定pkey的每个子类表上运行查询,然后从返回命中的表中加载.或者,Hibernate可以在所有表中执行一些可怕的联合查询 - …
最近,我开始研究一个大型的主流项目,为一个我无法透露的客户提供面向公众的电子商务平台.
我和经验丰富的开发人员合作,他们在伦敦金融城的许多项目中拥有多年的经验.
似乎每个人都在很大程度上进入接口.这是压倒性的,我现在怀疑我以前做过的所有事情,即使用抽象基类.
.NET不是COM,它不是基于接口的编程平台.我是否遗漏了某些东西,或者这只是一种群体心态 - 多年的编程已经成为.NET领域公认的规范?
谢谢
卢克
可能重复:
首选组合而不是继承?
java中的继承和委托有什么区别?
如何在我的项目中使用以下示例?请告诉我代表团.我知道继承,但对授权知之甚少.所以,请给出正确的理由.我为什么要用这个?
package com.m;
class RealPrinter { // the "delegate"
void print() {
System.out.println("something");
}
}
class Printer { // the "delegator"
RealPrinter p = new RealPrinter(); // create the delegate
void print() {
p.print(); // delegation
}
}
public class Tester {
// to the outside world it looks like Printer actually prints.
public static void main(String[] args) {
Printer printer = new Printer();
printer.print();
}
}
Run Code Online (Sandbox Code Playgroud) 你能给我一个具体的例子,当我更喜欢使用私有继承而非组合时?就个人而言,我将使用组合而非私有继承,但可能存在这样的情况:使用私有继承是特定问题的最佳解决方案.阅读C++ faq,给出了一个使用私有继承的示例,但我似乎比私有继承更容易使用组合+策略模式甚至公共继承.
c++ inheritance strategy-pattern composition private-inheritance
在我曾经工作的几乎每个项目中,都会有一个或两个具有以下属性的类:
你可能会说糟糕的设计.但在所有情况下,在设计时并非如此.这些课程随着时间的推移有机地成长,成为众所周知的"上帝阶级".这对我在大型软件项目中的经验是如此不变,我不得不问:
提示,经验和想法欢迎!
我使用一个类来扩展行对象的功能,该类将一个行句柄作为其构造函数的输入参数.然后,该类创建一个WindowMouseMotion侦听器,以检测突出显示该行的鼠标悬停,并显示一个包含用于设置某些行/数据属性的控件的面板.这很好用.
我现在正试图让这个类检测并通过监听该行的ObjectBeingDestroyed事件来响应被删除的行.我的问题是,通过存储行的句柄将此类链接到行对象是最好的解决方案还是可以通过继承来扩展行类?我查看了MATLAB文档并在线搜索,但无法找到有关继承图形类的确切信息.
java ×5
inheritance ×3
.net ×1
android ×1
api ×1
architecture ×1
c++ ×1
coding-style ×1
composition ×1
datetime ×1
graphics ×1
hibernate ×1
iterator ×1
junit ×1
matlab ×1
oop ×1
php ×1
refactoring ×1
unit-testing ×1