超级阶级是账户,我有两个子类别——经常账户和储蓄账户。
超级阶级将采用“Interest”(Interest)”的方法,该方法将使用继承类别规定的利率计算利息。 我不知道如何强迫某个阶层来界定这一点。
我认为,唯一的选择是强迫下级人员执行“内部”申请,并且只是确定其中的费率。
超级阶级是账户,我有两个子类别——经常账户和储蓄账户。
超级阶级将采用“Interest”(Interest)”的方法,该方法将使用继承类别规定的利率计算利息。 我不知道如何强迫某个阶层来界定这一点。
我认为,唯一的选择是强迫下级人员执行“内部”申请,并且只是确定其中的费率。
I m not sure if I understand your question, but I think you may use the keyword abstract
if you don t want to introduce an interface
public abstract class Account
{
public int applyInterest()
{
return 10 * getInterestRate();
}
abstract protected int getInterestRate();
}
public class CurrentAccount extends Account
{
protected int getInterestRate() { return 2; }
}
public class SavingsAccount extends Account
{
protected int getInterestRate() { return 3; }
}
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class AccountTest
{
@Test
public void currentAccount()
{
Account ca = new CurrentAccount();
assertTrue(ca.applyInterest()==20);
}
@Test
public void savingsAccount()
{
Account sa = new SavingsAccount();
assertTrue(sa.applyInterest()==30);
}
}
如果情况较好,你可以强迫子类执行。
The best solution is to make the class Account as abstract
.
If you don t want to do this for any reason (then, Account must be instantiable) you can write:
applyInterest(){
throw new RuntimeException("Not yield implemented");//or another Exception: IllegalState, NoSuchMethodException, etc
}
Really, it s not the best idea in the world (the best idea is to make Account as abstract class), but when you test the subclass of Account and call the applyInterest(), this exception force you to implement this method in the subclass.
这只是另一种方式。
Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...
Check this, List<String> list = new ArrayList<String>(); for (int i = 0; i < 10000; i++) { String value = (""+UUID.randomUUID().getLeastSignificantBits()).substring(3, ...
I am in the middle of solving a problem where I think it s best suited for a decorator and a state pattern. The high level setting is something like a sandwich maker and dispenser, where I have a set ...
I have been trying to execute a MS SQL Server stored procedure via JDBC today and have been unsuccessful thus far. The stored procedure has 1 input and 1 output parameter. With every combination I ...
I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...
If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...
I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....
I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...