



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Encapsulation, Object Life Cycle, Garbage Collection, Static Class Members, Const and Readonly Members, Using The this Reference, Rational, Graphics, Drawing, Line, Rectangular, Color Class
Typology: Slides
1 / 6
This page cannot be seen from the preview
Don't miss anything!




1 // Employee.cs 2 // Employee class contains static data and a static method. 3 4 using System; 5 6 // Employee class definition 7 public class Employee 8 { 9 private string firstName; 10 private string lastName; 11 private static int count; // Employee objects in memory 12 13 // constructor increments static Employee count 14 public Employee( string fName, string lName ) 15 { 16 firstName = fName; 17 lastName = lName; 18 19 ++count; 20 21 Console.WriteLine( "Employee object constructor: " + 22 firstName + " " + lastName + "; count = " + Count ); 23 } 24 25 // destructor decrements static Employee count 26 ~Employee() 27 { 28 --count; 29 30 Console.WriteLine( "Employee object destructor: " + 31 firstName + " " + lastName + "; count = " + Count ); 32 } 33
34 // FirstName property 35 public string FirstName 36 { 37 get 38 { 39 return firstName; 40 } 41 } 42 43 // LastName property 44 public string LastName 45 { 46 get 47 { 48 return lastName; 49 } 50 } 51 52 // static Count property 53 public static int Count 54 { 55 get 56 { 57 return count; 58 } 59 } 60 61 } // end class Employee
1 // StaticTest.cs 2 // Demonstrating static class members. 3 4 using System; 5 6 // StaticTest class definition 7 class StaticTest 8 { 9 // main entry point for application 10 static void Main( string[] args ) 11 { 12 Console.WriteLine( "Employees before instantiation: " + 13 Employee.Count + "\n" ); 14 15 // create two Employees 16 Employee employee1 = new Employee( "Susan", "Baker" ); 17 Employee employee2 = new Employee( "Bob", "Jones" ); 18 19 Console.WriteLine( "\nEmployees after instantiation: " + 20 "Employee.Count = " + Employee.Count + "\n" ); 21 22 // display the Employees 23 Console.WriteLine( "Employee 1: " + 24 employee1.FirstName + " " + employee1.LastName + 25 "\nEmployee 2: " + employee2.FirstName + 26 " " + employee2.LastName + "\n" ); 27 28 // mark employee1 and employee1 objects for 29 // garbage collection 30 employee1 = null; 31 employee2 = null; 32 33 // force garbage collection 34 System.GC.Collect(); 35
1 // Time4.cs 2 // Class Time2 provides overloaded constructors. 3 4 using System; 5 6 // Time4 class definition 7 public class Time 8 { 9 private int hour; // 0- 10 private int minute; // 0- 11 private int second; // 0- 12 13 // constructor 14 public Time4( int hour, int minute, int second ) 15 { 16 this.hour = hour; 17 this.minute = minute; 18 this.second = second; 19 } 20 21 // create string using this and implicit references 22 public string BuildString() 23 { 24 return "this.ToStandardString(): " + 25 this.ToStandardString() + 26 "\nToStandardString(): " + ToStandardString(); 27 } 28
29 // convert time to standard-time (12 hour) format string 30 public string ToStandardString() 31 { 32 return String.Format( "{0}:{1:D2}:{2:D2} {3}", 33 ( ( this.hour == 12 || this.hour == 0 )? 12 : 34 this.hour % 12 ), this.minute, this.second, 35 ( this.hour < 12? "AM" : "PM" ) ); 36 } 37 38 } // end class Time
1 // ThisTest.cs 2 // Using the this reference. 3 4 using System; 5 using System.Windows.Forms; 6 7 // ThisTest class definition 8 class Class 9 { 10 // main entry point for application 11 static void Main( string[] args ) 12 { 13 Time4 time = new Time4( 12, 30, 19 ); 14 15 MessageBox.Show( time.BuildString(), 16 "Demonstrating the "this" Reference" ); 17 } 18 }