// Rectangular class declaration and implementation
# Import <Foundation/Foundation. h> @ interface rect2: nsobject {// float Chang; // float W ;}@ property float Chang; @ property float W;-(float) sizeofrect; @ end # import "rect2.h" @ implementation rect2 // @ synthesize Chang; // @ synthesize W;-(float) sizeofrect {nslog (@ "% @", self ); return (self. chang) * (self. w) ;}@ end // The declaration and definition of the cuboid class # import <Foundation/Foundation. h> # import "rect2.h" @ interface lifangti: rect2 {// float height;} @ property float height;-(float) tijifor; @ end # import "lifangti. H "@ implementation lifangti-(float) tijifor {return self. W * self. height * self. chang ;}@ end # import "viewcontroller. H "# import" lifangti. H "# import" rect2.h "@ interface viewcontroller () @ end @ implementation viewcontroller-(void) viewdidload {[Super viewdidload]; rect2 * rect = [[rect2 alloc] init]; rect. chang = 1; rect. W = 2; nslog (@ "% @", rect); nslog (@ "% F", [rect sizeofrect]); lifangti * lifangti = [[lifangti alloc] init]; lifangti. chang = 1.0; lifangti. W = 3.0; lifangti. height = 3.0; nslog (@ "% F", [lifangti tijifor]);}