net.sourceforge.cilib.util
Interface Cloneable

All Superinterfaces:
Serializable
All Known Subinterfaces:
AlgorithmIterator<E>, AlgorithmListener, BeePositionUpdateStrategy, BoundaryConstraint, CandidateSolution, CentroidsInitialisationStrategy, ChargedParticleInitialisationStrategy, ControlParameter, CreationStrategy, DomainRegistry, Entity, Fitness, FitnessCalculator<T>, Graph<E>, GuideSelectionStrategy, GuideUpdateStrategy, HoneyBee, ItemLocation, IterationStrategy<E>, KnowledgeTransferStrategy, Measurement, NeighbourhoodBestUpdateStrategy, NeuralNetworkDataIterator, NeuronFunction, NNError, NNPattern, ObjectiveAssignmentStrategy, Operator, OptimisationProblem, Particle, PersonalBestUpdateStrategy, PhenotypeUpdateStrategy, PositionInitialisationStrategy, PositionUpdateStrategy, Problem, SelectionRecipe<E>, SocialEntity, SolutionWeighing, StoppingCondition, StructuredType<E>, Topology<E>, Tree<E>, Type, VelocityInitialisationStrategy, VelocityUpdateStrategy, Weighing<E>
All Known Implementing Classes:
ABC, AbsoluteValue, AbstractBee, AbstractEntity, AbstractGameResult, AbstractIterationStrategy, AbstractList, AbstractParticle, AbstractShape, AbstractTopology, AbstractTree, Ackley, ActivationFunction, Agent, AgentMeasure, Algorithm, AlignmentVisualizer, AngleModulation, AntiClusterWeighing, ArchiveReevaluationResponseStrategy, ArchivingIterationStrategy, AreaUnderROC, AssociatedPairDataSetBuilder, ASynchronousIterationStrategy, AveFitnessCalculationStrategy, AverageDiversityAroundAllEntities, AverageItemDistanceMeasure, AveTetrisFeaturesMeasure, BareBonesDEVelocityUpdate, BareBonesExploitVelocityUpdateStrategy, BareBonesPositionUpdateStrategy, BareBonesVelocityUpdateStrategy, Beale, BestParticlePosition, BestPositionBoundViolations, BinaryAdapter, BinaryDataSetBuilder, BinaryMSAProblem, BinaryPositionUpdateStrategy, BinaryTree, Bird, Bit, BitArray, BitStringMatcher, Blackboard, BlendCrossoverStrategy, Bohachevsky1, Bohachevsky2, Bohachevsky3, Booth, BouncingBoundaryConstraint, BoundedControlParameter, BoundedPersonalBestUpdateStrategy, BoxShape, Branin, Bukin4, Bukin6, CandidateSolutionMixin, CauchyMutationStrategy, ChargedParticle, ChargedVelocityUpdateStrategy, ClampingBoundaryConstraint, ClassificationErrorReal, ClonedPopulationInitialisationStrategy, ClusterableDataSet.Pattern, ClusteringFitnessFunction, ClusteringProblem, CoevolutionAlgorithm, CoevolutionCompetitorList, CoevolutionIterationStrategy, CoevolutionSynchronousIterationStrategy, CoherenceParticle, CoherenceVelocityUpdate, Colville, CompetitiveCoevolutionGameLearningOptimizationProblem, CompetitiveCoevolutionIterationStrategy, CompetitiveCoevolutionParticleReevaluationResponseStrategy, CompetitiveCoevolutionProblemAdapter, Competitor, CompositeMeasurement, CompositeOperator, CompoundSelection, ConstantControlParameter, ConstrictionVelocityUpdate, ContinuousFunction, ContinuousStep, ConvergedDimensions, CooperativeEntity, CooperativeOptimisationProblemAdapter, CriterionBasedMOProblemAdapter, CrossoverStrategy, Damavandi, DataSet, DataSetBasedCentroidsInitialisationStrategy, DataSetBasedPositionInitialisationStrategy, DataSetBuilder, DaviesBouldinIndex, DcPatternCount, DeflectionBoundaryConstraint, DEPositionUpdateStrategy, DeratingFunctionMaximisationProblem, DesiredMaximizationFitness, DeviationDecorator, DgPatternCount, Diameter, DifferentialEvolutionBinomialCrossover, DifferentialEvolutionExponentialCrossover, DifferentialEvolutionIterationStrategy, DimensionBoundViolationsPerParticle, DiscreteFunction, DiscreteOptimisationProblem, Diversity, Diversity, DNGuideSelectionStrategy, DomainPercentageVelocityInitialisationStrategy, DominantGuideUpdateStrategy, DrawResult, DtPatternCount, DualReactionStrategy, DunnIndex, DunnIndex33, DunnIndex53, DvPatternCount, DynamicIterationStrategy, DynamicParticle, Easom, EC, Efn2RNAFitness, ElitistSelection, ElitistSelectionStrategy, EntityBasedFitnessCalculator, EntityScoreboard, EntityWeighing, EnvironmentChangeDetectionStrategy, EnvironmentChangeResponseStrategy, ErrorDg, ErrorDt, ErrorDv, EuclideanDiversityAroundGBest, EvaluationMediator, ExplorerBee, ExponentiallyDecreasingControlParameter, ExponentiallyIncreasingControlParameter, ExpressionFunction, FASTADataSetBuilder, FDA1_f1, FDA1_f2, FDA1_g, FDA1_h, FDA2_f1, FDA2_f2, FDA2_g, FDA2_h, FDRVelocityUpdateStrategy, FFNNEvaluationMediator, FIPSVelocityUpdate, Fitness, FitnessCalculationStrategy, FitnessEvaluations, FitnessSharingStrategy, FixedListSeedingStrategy, FixedSeedStrategy, FixedWeighing, Foxholes, Function, FunctionDimensionMapping, FunctionDimensionMappingProblem, FunctionLearningProblem, FunctionMaximisationProblem, FunctionMinimisationProblem, FunctionOptimisationError, FunctionOptimisationProblem, Game, GameItem, GameLearningOptimizationProblem, GameSeedingStrategy, GameState, GaussianMutationStrategy, GaussianPositionUpdateStrategy, GBestTopology, GCVelocityUpdateStrategy, GeneralisedDunnIndex, GeneralTree, GenericFunctionMeasurement, GeneticAlgorithmIterationStrategy, GoldsteinPrice, GradientFunctionMinimisationProblem, GridGame, GridGameState, GridItem, GridLocation, Griewank, HalkidiVazirgiannisIndex, Harmony, Himmelblau, HS, HybridCooperativeAlgorithm, HydrogenBondFitness, HyperbollicTangentOutputFunction, HypercubeTopology, HyperEllipsoid, Individual, InferiorFitness, Int, InterClusterDistance, IntraClusterDistance, InvertedFunctionDecorator, IterationNeighbourhoodBestUpdateStrategy, Iterations, KHarmonicMeansFunction, KMeans, KnapSack, KnightCoverageProblem, KnightsCoverage, KnightsTour, KnuthSubtractive, LBestTopology, LFDecorator, LFPSO, LFVelocityUpdate, LinearDataIterator, LinearDecreasingControlParameter, LinearIncreasingControlParameter, LinearMappingProblem, LinearOutputFunction, LinearPositionUpdateStrategy, LinearVelocityUpdate, LinearWeighing, LineShape, ListGameState, ListSeedingStrategy, LocalDataSet, LognormalPhenotypeUpdateStrategy, Long, LongestCommonSubsequence, LShape, MappingProblem, MathewsFitness, Matrix, MatrixDataSetBuilder, MaulikBandyopadhyayIndex, MaximisationFitness, MaximumDeratingFunction1, MaximumFitnessEvaluations, MaximumIterations, MaximumRestarts, MemoryNeighbourhoodBestUpdateStrategy, MersenneTwister, MethewsFitness, Michalewicz, Michalewicz12, MinimisationFitness, MinimumDiversity, MinimumFunctionMinimisationError, MinimumSwarmDiameter, MinMaxAlphaBetaTraversalStrategy, MinMaxDistanceInitializationStrategy, MOFitness, MOOptimisationProblem, MOVelocityUpdateStrategy, MovingPeaks, MovingPeaksOfflineErrorMeasurement, MovingPeaksOfflinePerformanceMeasurement, MSAProblem, MSEErrorFunction, MultimodalFunction1, MultimodalFunction2, MultimodalFunction3, MultimodalFunction4, MultimodalFunction5, MultiObjectiveParticle, MultipleFitness, MultipleSolutions, MultiPopulationBasedAlgorithm, MultiPopulationCriterionBasedAlgorithm, MultiPopulationFitness, MultistartOptimisationAlgorithm, MutationStrategy, NaryTree, NastyBenchmark, NBestGuideSelectionStrategy, NearestBoundaryConstraint, NeighbourhoodBestSentriesDetectionStrategy, NeighbourhoodBestSentriesReactionStrategy, Neumaier3, NeuralAgent, NeuralNetworkController, NeuralNetworkProblem, NeuralStateEvaluator, Niche, NichePSOF1, NNFunctionAdapter, NNOutput, NoisyFunctionDecorator, NonParametricClusteringFunction, NormalisedDiversity, NumberOfClustersFormed, Numeric, OnePointCrossoverStrategy, OnlookerBee, OpponentPoolSelectionStrategy, OpponentSelectionStrategy, OptimisationProblemAdapter, OptimiserStalled, Pair, ParametricClusteringFunction, ParametricWithQuantisationErrorFunction, ParetoOptimalFront, ParetoOptimalSet, PartialReinitialisationResponseStrategy, ParticleBoundViolations, ParticleDecorator, ParticlePositions, ParticleReevaluationResponseStrategy, PbestBoundViolations, PBestGuideSelectionStrategy, PercentageComplete, PercentageWonFitnessCalculationStrategy, PerElementReinitialisation, PerformanceEvaluationOptimizationProblem, PeriodicBoundaryConstraint, PeriodicDetectionStrategy, PlayerItem, PopulationBasedAlgorithm, PopulationCompetitorList, PopulationInitialisationStrategy, PredatorPreyGame, PredPreyPositionInitializationStrategy, PropertyBasedFitnessCalculator, ProportionalControlParameter, PSO, Quadric, QuantisationErrorFunction, QuantumPositionUpdateStrategy, QuantumVelocityUpdateStrategy, Quartic, QuasiRandom, Queens, RandCreationStrategy, Random, RandomAgent, RandomAlgorithmIterator, RandomBoundaryConstraint, RandomBoundedInitialVelocityStrategy, RandomCentroidsInitialisationStrategy, RandomInitialVelocityStrategy, RandomizedPositionInitialisationStrategy, RandomizingControlParameter, RandomListSeedingStrategy, RandomNumber, RandomObjectiveAssignmentStrategy, RandomPredPreyInitializationStrategy, RandomSelection, RandomSelectionStrategy, RandomSentriesDetectionStrategy, RandomSentryDetectionStrategy, RandomSentryPointsDetectionStrategy, RankBasedSelection, RANLUX, Rastrigin, Real, RealTimePredatorPreyGame, RecordItemLocationMeasure, ReevaluationReactionStrategy, ReflectedFunctionDecorator, ReinitialisationBoundary, ReinitializationReactionStrategy, Restarts, RingBasedPopulationSelection, Ripple, RLShape, RNAAccuracyMeasurement, RNAConformation, RNAFitness, RNAOptimisationProblem, RNAParticle, RNAPSO, RNAStem, RNAStructureMeasurement, RNAVelocityUpdate, RobelOverfittingRho, Rosenbrock, RotatedFunctionDecorator, RouletteWheelSelection, RouletteWheelSelectionStrategy, RZigZagShape, SAILAEvaluationMediator, Salomon, ScaledFunctionDecorator, ScatterSeperationRatio, Schaffer2, Schaffer6, Schwefel, SchwefelProblem1_2, SchwefelProblem2_21, SchwefelProblem2_22, SchwefelProblem2_26, ScoreGameResult, SelectAllOpponentSelectionStrategy, SelectAllSolutionsPoolSelectionStrategy, SelectHOFPoolSelectionStrategy, SelectionStrategy, SelectiveKnowledgeTransferStrategy, SelectNOpponentSelectionStrategy, SelectpBestSolutionsPoolSelectionStrategy, SequentialAlgorithmIterator, SequentialObjectiveAssignmentStrategy, Set, ShekelN, ShekelsFoxholes, ShiftedFunctionDecorator, Shir, Shubert, Sigmoid, SigmoidOutputFunction, SimpleRNAFitness, Simulation, SingleAgentMeasure, SingleIteration, SinglePopulationBasedAlgorithm, SingularAlgorithm, SixHumpCamelBack, Sobol, Solution, SortedList, SpatialExtent, SpecializedPopluationInitialisationStrategy, Spherical, SplitCooperativeAlgorithm, StandardChargedParticleInitialisationStrategy, StandardFitnessSharingStrategy, StandardGraph, StandardGuideUpdateStrategy, StandardParticle, StandardPattern, StandardPersonalBestUpdateStrategy, StandardPositionUpdateStrategy, StandardVelocityUpdate, StateAwareMeasurement, StateEvaluationAgent, StateTraversalStrategy, StaticPhenotypeUpdateStrategy, StaticPositionInitializationStrategy, Step, StoredFitness, StringBasedDomainRegistry, StringDataSetBuilder, StringType, StructuredTypeFitnessCalculator, SynchronousIterationStrategy, TanHOutputFunction, Tausworthe, Tetris, TetrisBlock, TetrisGameState, TextDataSetBuilder, TicTacToe, Time, TopologyBestSentryDetectionStrategy, TopologyLoopingOperator, TotalFitnessCalculationStrategy, TournamentSelection, TournamentSelectionStrategy, TShape, TuriIndex, TypeList, UnconstrainedBoundary, UniformCrossoverStrategy, UniformMutationStrategy, UniqueSeedingStrategy, UrsemF1, UrsemF3, UrsemF4, Vector, VeenmanReindersBackerIndex, VEPSOGuideSelectionStrategy, ViennaRNAFitness, VisualPositionUpdateStategy, VonNeumannTopology, Weight, WinGameResult, WorkerBee, ZeroInitialVelocityStrategy, ZiffGFSR4, ZigZagShape

public interface Cloneable
extends Serializable

This interface provides a publicly available getClone() method that can be used to obtain a cloned version of the instance on which the method was invoked.

This interface was added in order to bypass the current issues with clone() as provided with the JDK. The protected status of Object.clone() prevented some operations that were needed for CILib.

Another consideration was the problems associated with Object.clone() as discussed by Joshua Bloch.

See Also:
"Item 11 of the 2nd edition of Effective Java by Joshua Bloch."

Method Summary
 Object getClone()
          Create a cloned copy of the current object and return it.
 

Method Detail

getClone

Object getClone()
Create a cloned copy of the current object and return it. In general the created copy will be a deep copy of the provided instance. As a result this operation an be quite expensive if used incorrectly.

Returns:
An exact clone of the current object instance.
See Also:
Object.clone()


Copyright © 2009 CIRG. All Rights Reserved.