SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.1.3
Threshold is medium
Effort is default
Summary
Classes |
Bugs |
Errors |
Missing Classes |
125 |
30 |
0 |
0 |
org.woehlke.computer.kurzweil.SimulatedEvolutionApplication
Bug |
Category |
Details |
Line |
Priority |
Dead store to simulatedEvolutionTab in new org.woehlke.computer.kurzweil.SimulatedEvolutionApplication(String[]) |
STYLE |
DLS_DEAD_LOCAL_STORE |
28 |
Medium |
Dead store to application in org.woehlke.computer.kurzweil.SimulatedEvolutionApplication.main(String[]) |
STYLE |
DLS_DEAD_LOCAL_STORE |
36 |
Medium |
Usage of GetResource in new org.woehlke.computer.kurzweil.SimulatedEvolutionApplication(String[]) may be unsafe if class is extended |
BAD_PRACTICE |
UI_INHERITANCE_UNSAFE_GETRESOURCE |
25 |
Low |
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties
Bug |
Category |
Details |
Line |
Priority |
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) may fail to clean up java.io.InputStream |
EXPERIMENTAL |
OBL_UNSATISFIED_OBLIGATION |
1017 |
Medium |
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) |
STYLE |
REC_CATCH_EXCEPTION |
1020 |
Low |
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1
Bug |
Category |
Details |
Line |
Priority |
Dead store to $L0 in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1.<static initializer for 1>() |
STYLE |
DLS_DEAD_LOCAL_STORE |
1029 |
Medium |
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View
Bug |
Category |
Details |
Line |
Priority |
Confusing to have methods org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View.getSubtitle() and org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl.getSubTitle() |
BAD_PRACTICE |
NM_CONFUSING |
114 |
Low |
org.woehlke.computer.kurzweil.commons.model.Bounds
Bug |
Category |
Details |
Line |
Priority |
org.woehlke.computer.kurzweil.commons.model.Bounds is Serializable; consider declaring a serialVersionUID |
BAD_PRACTICE |
SE_NO_SERIALVERSIONID |
13-45 |
Low |
org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood
Bug |
Category |
Details |
Line |
Priority |
org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood.getNeighbourhood() may expose internal representation by returning LatticeNeighbourhood.neighbourhood |
MALICIOUS_CODE |
EI_EXPOSE_REP |
20 |
Medium |
org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1
Bug |
Category |
Details |
Line |
Priority |
Dead store to $L0 in org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1.<static initializer for 1>() |
STYLE |
DLS_DEAD_LOCAL_STORE |
30 |
Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionApplet
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionApplet implements same interface as superclass |
STYLE |
RI_REDUNDANT_INTERFACES |
26-75 |
Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionApplet defines non-transient non-serializable instance field simulatedEvolutionController |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext defines non-transient non-serializable instance field controller |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext defines non-transient non-serializable instance field ctx |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext is Serializable; consider declaring a serialVersionUID |
BAD_PRACTICE |
SE_NO_SERIALVERSIONID |
16-77 |
Low |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController
Bug |
Category |
Details |
Line |
Priority |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.exit() |
MT_CORRECTNESS |
DL_SYNCHRONIZATION_ON_BOOLEAN |
64 |
High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.run() |
MT_CORRECTNESS |
DL_SYNCHRONIZATION_ON_BOOLEAN |
48 |
High |
Synchronization on SimulatedEvolutionController.mySemaphore in futile attempt to guard it |
MT_CORRECTNESS |
ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD |
65 |
Medium |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController implements same interface as superclass |
STYLE |
RI_REDUNDANT_INTERFACES |
16-67 |
Low |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field cells |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
High |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field simulatedEvolutionParameter |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
High |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field simulatedEvolutionWorldLattice |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
High |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab implements same interface as superclass |
STYLE |
RI_REDUNDANT_INTERFACES |
30-121 |
Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field ctx |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field properties |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field simulatedEvolutionParameter |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Low |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelCounted
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelCounted defines non-transient non-serializable instance field population |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Low |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelLifeCycle
Bug |
Category |
Details |
Line |
Priority |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelLifeCycle defines non-transient non-serializable instance field population |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Low |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation
Bug |
Category |
Details |
Line |
Priority |
Switch statement found in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation.countStatusOfOneCell(LifeCycleStatus) where default case is missing |
STYLE |
SF_SWITCH_NO_DEFAULT |
33-50 |
Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation$1
Bug |
Category |
Details |
Line |
Priority |
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation$1.<static initializer for 1>() |
STYLE |
DLS_DEAD_LOCAL_STORE |
33 |
Medium |