Arkadaşlar öncelikle siz burada bilgi paylaşımı yaparken benim sorunum olduğu için hemen üye olup yardım istemem pek etik değil biliyorum ama zor durumdayım. 2 gün sonra teslim edilmesi gereken bi ödevim var.. kimse karşılıksız böyle bişeyle uğraşmak istemez ama benim ki sadece bi umut.. nesneye yönelik programlama dersinde verilen bi ödev ve yapamazsam dersten kalıcam.. ödev aslında başlangıç seviyesi için.. bilen için kolay olabilir.. inşallah birilerinin iyi gününe denk gelirim..
ödev:
Grafik uygulamalarında kullanmak üzere Shape arayüzünü (interface) yazın. LineSegment, Rectangle, ve Circle sınıfları Shape arayüzünü gerçekleştiren sınıflar olacak. Bu üç sınıfı gerçekleştirin.
LineSegment iki noktanın koordinatları ile belirtilir: (x1,y1) ve (x2,y2). Rectangle sol-üst köşesinin koordinatları (x,y), ayrıca genişlik (width) ve yükseklik (height) değerleriyle belirtilir. Circle ise merkezinin koordinatları (x,y) ve yarıçapı ile belirtilir.
Üç sınıf toString() metodunu gerçekleştirecekler. Bu metot, istenilen bir Shape nesnesinin (diğer 3 nesneden biri) ekrana aşağıdaki gibi yazdırılmasını sağlayacaktır:
LineSegment (x1,y1)-(x2,y2)
Rectangle (x,y) width:999 height:999
Circle (x,y) radius:999
a) Yukarıdaki arayüz ve sınıfları kullanan Java uygulama programını yazınız.
Program bir dosyadan (sekil.txt), oluşturulacak şekil nesnelerinin bilgilerini aşağıdaki şekilde okuyacak:
LineSegment:x1:y1:x2:y2
Rectangle:x:y:w:h
Circle:x:y:r
Bu bilgileri okumak için StringTokenizer sınıfını kullacaksınız. x ve y'ler koordinatları, w genişlik ve h yükselik bilgilerini gösterir sayısal değerlerdir. Tüm sayısal değerler int türü olacak (pixel değerlerini belirtir). Okunan herbir şekil için uygun bir nesne (LineSegment, Rectangle, veya Circle) oluşturulacak ve Shape'lerden oluşan bir diziye eklenecektir. Dizinin en fazla 100 şekil alacağı varsayılacak.
Program diziyi oluşturduktan sonra, Shape dizisini aşağıdaki gibi yazdıracaktır:
LineSegments:
1. LineSegment (x1,y1)-(x2,y2)
2. ...
Rectangles:
1. Rectangle (x,y) width:999 height:999
2. ...
Circles:
1. Circle (x,y) radius:999
2. ...
3. ...
Bunu yapmak için dizinin 3 kere taranması (scan) gerekecek. Hangi tür Shape olduğunu anlamak için instanceof işleci kullanmak zorundasınız (örneğin bir String alan bilgisi kullanmayın).
ödev:
Grafik uygulamalarında kullanmak üzere Shape arayüzünü (interface) yazın. LineSegment, Rectangle, ve Circle sınıfları Shape arayüzünü gerçekleştiren sınıflar olacak. Bu üç sınıfı gerçekleştirin.
LineSegment iki noktanın koordinatları ile belirtilir: (x1,y1) ve (x2,y2). Rectangle sol-üst köşesinin koordinatları (x,y), ayrıca genişlik (width) ve yükseklik (height) değerleriyle belirtilir. Circle ise merkezinin koordinatları (x,y) ve yarıçapı ile belirtilir.
Üç sınıf toString() metodunu gerçekleştirecekler. Bu metot, istenilen bir Shape nesnesinin (diğer 3 nesneden biri) ekrana aşağıdaki gibi yazdırılmasını sağlayacaktır:
LineSegment (x1,y1)-(x2,y2)
Rectangle (x,y) width:999 height:999
Circle (x,y) radius:999
a) Yukarıdaki arayüz ve sınıfları kullanan Java uygulama programını yazınız.
Program bir dosyadan (sekil.txt), oluşturulacak şekil nesnelerinin bilgilerini aşağıdaki şekilde okuyacak:
LineSegment:x1:y1:x2:y2
Rectangle:x:y:w:h
Circle:x:y:r
Bu bilgileri okumak için StringTokenizer sınıfını kullacaksınız. x ve y'ler koordinatları, w genişlik ve h yükselik bilgilerini gösterir sayısal değerlerdir. Tüm sayısal değerler int türü olacak (pixel değerlerini belirtir). Okunan herbir şekil için uygun bir nesne (LineSegment, Rectangle, veya Circle) oluşturulacak ve Shape'lerden oluşan bir diziye eklenecektir. Dizinin en fazla 100 şekil alacağı varsayılacak.
Program diziyi oluşturduktan sonra, Shape dizisini aşağıdaki gibi yazdıracaktır:
LineSegments:
1. LineSegment (x1,y1)-(x2,y2)
2. ...
Rectangles:
1. Rectangle (x,y) width:999 height:999
2. ...
Circles:
1. Circle (x,y) radius:999
2. ...
3. ...
Bunu yapmak için dizinin 3 kere taranması (scan) gerekecek. Hangi tür Shape olduğunu anlamak için instanceof işleci kullanmak zorundasınız (örneğin bir String alan bilgisi kullanmayın).