Beispiel #1
0
        //'Client'
        static void Main(string[] args)
        {
            MobilePhone mobilePhone = new MobilePhone();

            mobilePhone.OperatingSystem  = " Nokia OS Series 30";
            mobilePhone.InternalMemory   = "250 MB";
            mobilePhone.ExpandableMemory = "32 GB";

            //Clone mobile phone object with Clone method

            //Clone Nokia 215 Mobile Phone Object with help of default value from Original object
            MobilePhone mobilePhone_Nokia215 = (MobilePhone)mobilePhone.Clone();

            mobilePhone_Nokia215.Name            = "Nokia 215";
            mobilePhone_Nokia215.RearCamera      = "0.3 MP";
            mobilePhone_Nokia215.ScreenSize      = "2.4 Inches";
            mobilePhone_Nokia215.BatteryCapacity = "1100 mAh";
            mobilePhone_Nokia215.Resolution      = "240 x 320 pixels";
            mobilePhone_Nokia215.Colour          = "Green";

            Console.WriteLine("------------------Nokia 215 Mobile Phone Details-------------------");
            Console.WriteLine(mobilePhone_Nokia215.GetMobilePhoneDetails());

            //Clone Nokia 130 Dual SIM Mobile Phone Object with help of default value from Original object
            MobilePhone mobilePhone_Nokia130DualSim = (MobilePhone)mobilePhone.Clone();

            mobilePhone_Nokia130DualSim.Name            = "Nokia 130 Dual SIM";
            mobilePhone_Nokia130DualSim.RearCamera      = "No";
            mobilePhone_Nokia130DualSim.ScreenSize      = "1.8 Inches";
            mobilePhone_Nokia130DualSim.BatteryCapacity = "1200 mAh";
            mobilePhone_Nokia130DualSim.Resolution      = "128 x 160 pixels";
            mobilePhone_Nokia130DualSim.Colour          = "Red";

            Console.WriteLine("------------------Nokia 130 Dual SIM Mobile Phone Details-------------------");
            Console.WriteLine(mobilePhone_Nokia130DualSim.GetMobilePhoneDetails());

            //Clone Nokia 130 Mobile Phone Object with help of default value from Original object
            MobilePhone mobilePhone_Nokia130 = (MobilePhone)mobilePhone.Clone();

            mobilePhone_Nokia130.Name            = "Nokia 130";
            mobilePhone_Nokia130.RearCamera      = "No";
            mobilePhone_Nokia130.ScreenSize      = "1.8 Inches";
            mobilePhone_Nokia130.BatteryCapacity = "1020 mAh";
            mobilePhone_Nokia130.Resolution      = "128 x 160 pixels";
            mobilePhone_Nokia130.Colour          = "Red";

            Console.WriteLine("------------------Nokia 130 Mobile Phone Details-------------------");
            Console.WriteLine(mobilePhone_Nokia130.GetMobilePhoneDetails());


            Console.Write("Press any key to exist...");
            Console.ReadKey();
        }
Beispiel #2
0
        public object Clone()
        {
            var firstName   = (string)FirstName.Clone();
            var middleName  = (string)MiddleName.Clone();
            var lastName    = (string)LastName.Clone();
            var mobilePhone = (string)MobilePhone.Clone();
            var email       = (string)Email.Clone();
            var address     = (string)Address.Clone();
            var ssn         = (string)Ssn.Clone();

            return(new Student(firstName, middleName, lastName, ssn, address, mobilePhone, email, Course, Speciality,
                               University, Faculty));
        }
Beispiel #3
0
        public static void Execute()
        {
            ConsoleExtension.WriteSeparator("Deep clone example");

            var phone = new MobilePhone
            {
                Manufacturer    = "Xiaomi",
                Model           = "11T",
                OperatingSystem = new OperatingSystem
                {
                    Name        = "Android",
                    Version     = "11",
                    Description = "Android is a mobile OS based on a modified version of the Linux kernel and other open source software, designed primarily for touchscreen mobile devices such as smartphones and tablets. ",
                },
            };

            var clonedPhone = phone.Clone();

            clonedPhone.Model = "11T Pro";

            phone.PrintDetails();
            clonedPhone.PrintDetails();
        }