{"id":1405,"date":"2013-12-18T21:45:59","date_gmt":"2013-12-18T14:45:59","guid":{"rendered":"http:\/\/www.sulhansetiawan.com\/?p=1405"},"modified":"2013-12-18T23:15:49","modified_gmt":"2013-12-18T16:15:49","slug":"descendant-have-different-action","status":"publish","type":"post","link":"https:\/\/sulhansetiawan.com\/id\/descendant-have-different-action\/","title":{"rendered":"Turunan bisa memiliki method yang berbeda aksinya dengan leluhurnya"},"content":{"rendered":"<p><\/p>\n<div style=\"width: 96px; margin-left: auto; margin-right: auto;\"><a href=\"\/id\/?p=1404\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/arrowleft_green_32.png\" title=\"Class punya keturunan yang mewarisi sifat-sifatnya\"\/><\/a><a href=\"\/id\/?p=1379\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/home_green_32.png\" title=\"Tutorial Delphi\"\/><\/a><a href=\"\/id\/?p=1406\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/arrowright_green_32.png\" title=\"Method Virtual, Dynamic, dan Abstract\"\/><\/a><\/div>\n<p>Perhatikan contoh program berikut dan hasilnya jika dijalankan.<\/p>\n<pre class='brush: delphi'>program Turunan2;\r\n{$APPTYPE CONSOLE}\r\ntype\r\n  TPoint=record\r\n    X,Y:integer;\r\n  end;\r\n\r\n  TGambar=class\r\n    Posisi:TPoint;\r\n    procedure GambarObyek;\r\n  end;\r\n\r\n  TLingkaran=class(TGambar)\r\n    Jari2:integer;  \r\n    procedure GambarObyek;\r\n  end;\r\n\r\n  TKotak=class(TGambar)\r\n    Panjang:integer;\r\n    Lebar:integer;    \r\n    procedure GambarObyek;\r\n  end;\r\n\r\n  procedure TGambar.GambarObyek;\r\n  begin\r\n    Writeln('Menggambar obyek');\r\n  end;\r\n\r\n  procedure TLingkaran.GambarObyek;\r\n  begin\r\n    Writeln('Menggambar lingkaran');\r\n  end;\r\n\r\n  procedure TKotak.GambarObyek;\r\n  begin\r\n    Writeln('Menggambar kotak');\r\n  end;\r\n\r\nvar\r\n  Gambar:TGambar;\r\n  Lingkaran:TLingkaran;\r\n  Kotak:TKotak;\r\n\r\nbegin\r\n\/\/membuat obyek\r\n  Gambar:=TGambar.Create;\r\n  Lingkaran:=TLingkaran.Create;\r\n  Kotak:=TKotak.Create;\r\n\/\/memanggil method\r\n  Gambar.GambarObyek;\r\n  Lingkaran.GambarObyek;\r\n  Kotak.GambarObyek;\r\n\/\/membuang obyek\r\n  Gambar.Free;\r\n  Lingkaran.Free;\r\n  Kotak.Free;\r\n\r\n  Writeln('Tekan Enter');\r\n  Readln;\r\nend.<\/pre>\n<p>Jika program dijalankan hasilnya akan tampak sebagai berikut:<\/p>\n<pre>Menggambar obyek\r\nMenggambar lingkaran\r\nMenggambar kotak\r\nTekan Enter\r\n\r\n<\/pre>\n<p>Dari contoh di atas terlihat bahwa method GambarObject antara TGambar, TLingkaran, dan TKotak memiliki aksi yang berbeda-beda.<\/p>\n<div style=\"width: 96px; margin-left: auto; margin-right: auto;\"><a href=\"\/id\/?p=1404\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/arrowleft_green_32.png\" title=\"Class punya keturunan yang mewarisi sifat-sifatnya\"\/><\/a><a href=\"\/id\/?p=1379\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/home_green_32.png\" title=\"Tutorial Delphi\"\/><\/a><a href=\"\/id\/?p=1406\"><img decoding=\"async\" src=\"https:\/\/sulhansetiawan.com\/_wordpress_\/2013\/12\/arrowright_green_32.png\" title=\"Method Virtual, Dynamic, dan Abstract\"\/><\/a><\/div>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Perhatikan contoh program berikut dan hasilnya jika dijalankan. program Turunan2; {$APPTYPE CONSOLE} type TPoint=record X,Y:integer; end; TGambar=class Posisi:TPoint; procedure GambarObyek; end; TLingkaran=class(TGambar) Jari2:integer; procedure GambarObyek; end; TKotak=class(TGambar) Panjang:integer; Lebar:integer; procedure GambarObyek; end; procedure TGambar.GambarObyek; begin Writeln(&#8216;Menggambar obyek&#8217;); end; procedure TLingkaran.GambarObyek; begin Writeln(&#8216;Menggambar lingkaran&#8217;); end; procedure TKotak.GambarObyek; begin Writeln(&#8216;Menggambar kotak&#8217;); end; var Gambar:TGambar; Lingkaran:TLingkaran; Kotak:TKotak; begin&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[105,104,96,145],"tags":[106],"class_list":["post-1405","post","type-post","status-publish","format-standard","hentry","category-delphi-lazarus","category-programming","category-all","category-tutorial","tag-delphi"],"_links":{"self":[{"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/posts\/1405","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/comments?post=1405"}],"version-history":[{"count":0,"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/posts\/1405\/revisions"}],"wp:attachment":[{"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/media?parent=1405"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/categories?post=1405"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sulhansetiawan.com\/id\/wp-json\/wp\/v2\/tags?post=1405"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}