我有代碼,我打電話在類內實施的方法,即cmpreValue(詮釋實際,詮釋虛擬);如何處理繼承,如果一個子類已經擴展與基類
public class TestCompare extends TestBaseClass {
private static final Logger logger = Logger.getLogger(TestCompare.class.getName());
String virtual= null;
String real= null;
XLSParser objVal ;
public void testSomeThing() {
// Returns some string value
real= objVal.getSomeStringValue();
virtual= getExpectedValue();
cmpreValue(virtual, real);
}
void cmpreValue(String virtual, String real)
{
if(real.equals(virtual))
{
logger.info(real);
}
else{
logger.info(virtual);
}
}
這裏,cmpreValue(String virtual, String real)
使用一次,但我想在我的其他類使用此功能爲好。所以,我想我做了另一類即
public class Helpervalidate{
void cmpreValue(String virtual, String real)
{
if(real.equals(virtual))
{
// Not Visible objVal
logger.info(**objVal**.something());
}
else{
logger.info(virtual);
}
}
,並在我的TestCompare類創建Helpervalidate類的一個對象,並調用TestCompare類功能cmpreValue但後來我得到錯誤objVal在Helpervalidate類是不明確的。
由於我的類TestCompare已經擴展了TestBaseClass,所以我不能去另一個類的擴展。 那麼如何讓我的函數cmpreValue(字符串虛擬,字符串真實)可重用到其他類? 有什麼辦法,我簡單地添加funtion cmpreValue(字符串虛擬,字符串真實),並傳遞值,它工作正常?
你可以添加屬性到'Helpervalidate'類嗎?然後我可以幫忙。 – 2015-02-10 16:03:52
爲什麼你在一個版本的方法中使用'logger.info(real)'而在另一個版本中使用'logger.info(objVal.something())'?什麼意義? – PDStat 2015-02-10 16:18:42
@AnindaBhattacharyya:是的,我可以添加...請幫助。 – 2015-02-11 12:04:37