コード例 #1
0
        //UC7-Use Reflection to change mood dynamically 

        public static string SetField(string message, string fieldName)
        {
            try
            {
                MoodAnalyzer obj = new MoodAnalyzer();
                Type type = Type.GetType("MoodAnalyzerProblem.MoodAnalyzer");
                FieldInfo field = type.GetField(fieldName);
                if (message == null)
                {
                    throw new MoodAnalyzerException(MoodAnalyzerException.ExceptionType.NO_SUCH_FEILD, "Mood should not be NULL");
                }

                field.SetValue(obj, message);

                return obj.message;
            }
            catch (NullReferenceException)
            {
                throw new MoodAnalyzerException(MoodAnalyzerException.ExceptionType.NO_SUCH_FIELD, "No Such Field");
            }

        }
コード例 #2
0
 static void Main(string[] args)
 {
     Console.WriteLine("Welcome to Mood Analyser:");
     MoodAnalyzer        mood    = new MoodAnalyzer();
     MoodAnalyzerFactory factory = new MoodAnalyzerFactory();
 }