PatternStrategy: Initial commit
This commit is contained in:
6
System Development/PatternStrategy/.classpath
Normal file
6
System Development/PatternStrategy/.classpath
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="src" path="src"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
||||||
17
System Development/PatternStrategy/.project
Normal file
17
System Development/PatternStrategy/.project
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>PatternStrategy</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
||||||
6
System Development/PatternStrategy/src/DoAdd.java
Normal file
6
System Development/PatternStrategy/src/DoAdd.java
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
public class DoAdd implements Strategy{
|
||||||
|
@Override
|
||||||
|
public int doOperation(int num1, int num2) {
|
||||||
|
return num1 + num2;
|
||||||
|
}
|
||||||
|
}
|
||||||
6
System Development/PatternStrategy/src/DoMultiply.java
Normal file
6
System Development/PatternStrategy/src/DoMultiply.java
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
public class DoMultiply implements Strategy{
|
||||||
|
@Override
|
||||||
|
public int doOperation(int num1, int num2) {
|
||||||
|
return num1 * num2;
|
||||||
|
}
|
||||||
|
}
|
||||||
6
System Development/PatternStrategy/src/DoSubtract.java
Normal file
6
System Development/PatternStrategy/src/DoSubtract.java
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
public class DoSubtract implements Strategy{
|
||||||
|
@Override
|
||||||
|
public int doOperation(int num1, int num2) {
|
||||||
|
return num1 - num2;
|
||||||
|
}
|
||||||
|
}
|
||||||
13
System Development/PatternStrategy/src/PatternStrategy.java
Normal file
13
System Development/PatternStrategy/src/PatternStrategy.java
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
|
||||||
|
public class PatternStrategy {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
SelectToDo toDo1 = new SelectToDo(new DoAdd());
|
||||||
|
System.out.println("3 + 2 = " + toDo1.executeStrategy(3, 2));
|
||||||
|
|
||||||
|
SelectToDo toDo2 = new SelectToDo(new DoSubtract());
|
||||||
|
System.out.println("3 - 2 = " + toDo2.executeStrategy(3, 2));
|
||||||
|
|
||||||
|
SelectToDo toDo3 = new SelectToDo(new DoMultiply());
|
||||||
|
System.out.println("3 * 2 = " + toDo3.executeStrategy(3, 2));
|
||||||
|
}
|
||||||
|
}
|
||||||
12
System Development/PatternStrategy/src/SelectToDo.java
Normal file
12
System Development/PatternStrategy/src/SelectToDo.java
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
|
||||||
|
public class SelectToDo {
|
||||||
|
private Strategy strategy;
|
||||||
|
|
||||||
|
public SelectToDo(Strategy strategy){
|
||||||
|
this.strategy = strategy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int executeStrategy(int num1, int num2){
|
||||||
|
return strategy.doOperation(num1, num2);
|
||||||
|
}
|
||||||
|
}
|
||||||
4
System Development/PatternStrategy/src/Strategy.java
Normal file
4
System Development/PatternStrategy/src/Strategy.java
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
public interface Strategy {
|
||||||
|
public int doOperation(int num1, int num2);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user