61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| @startuml
 | |
| package com.iluwatar.strangler {
 | |
|   class App {
 | |
|     + App()
 | |
|     + main(args : String[]) {static}
 | |
|   }
 | |
|   class HalfArithmetic {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     - newSource : HalfSource
 | |
|     - oldSource : OldSource
 | |
|     + HalfArithmetic(newSource : HalfSource, oldSource : OldSource)
 | |
|     + ifHasZero(nums : int[]) : boolean
 | |
|     + mul(nums : int[]) : int
 | |
|     + sum(nums : int[]) : int
 | |
|   }
 | |
|   class HalfSource {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     + HalfSource()
 | |
|     + accumulateSum(nums : int[]) : int
 | |
|     + ifNonZero(nums : int[]) : boolean
 | |
|   }
 | |
|   class NewArithmetic {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     - source : NewSource
 | |
|     + NewArithmetic(source : NewSource)
 | |
|     + ifHasZero(nums : int[]) : boolean
 | |
|     + mul(nums : int[]) : int
 | |
|     + sum(nums : int[]) : int
 | |
|   }
 | |
|   class NewSource {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     + NewSource()
 | |
|     + accumulateMul(nums : int[]) : int
 | |
|     + accumulateSum(nums : int[]) : int
 | |
|     + ifNonZero(nums : int[]) : boolean
 | |
|   }
 | |
|   class OldArithmetic {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     - source : OldSource
 | |
|     + OldArithmetic(source : OldSource)
 | |
|     + mul(nums : int[]) : int
 | |
|     + sum(nums : int[]) : int
 | |
|   }
 | |
|   class OldSource {
 | |
|     - LOGGER : Logger {static}
 | |
|     - VERSION : String {static}
 | |
|     + OldSource()
 | |
|     + accumulateMul(nums : int[]) : int
 | |
|     + accumulateSum(nums : int[]) : int
 | |
|   }
 | |
| }
 | |
| OldArithmetic -->  "-source" OldSource
 | |
| NewArithmetic -->  "-source" NewSource
 | |
| HalfArithmetic -->  "-newSource" HalfSource
 | |
| HalfArithmetic -->  "-oldSource" OldSource
 | |
| @enduml |