Projeyi öncelikle forklayın ve clone edin. Daha sonra projeyi IntellijIDEA kullanarak açınız. README.md dosyasını dikkatli bir şekilde okuyarak istenenleri yapmaya çalışın. Proje sayımız ilerledikçe proje yönetimimizi kolaylaştırmak adına projelerimizi belli klasör kalıplarında saklamak işimizi kolaylaştırmak adına iyi bir alışkanlıktır. Örnek bir Lokasyon: Workintech/Sprint_1/Etud.
- org.example paketi altında
Pointisimli bir sınıf tanımlayınız. - Sınıfın 2 tane değişkeni olmalı x ve y ikisinin de değeri
intolmalı. - Bu iki değişkene sadece bu sınıf içerisinden erişilebilinmeli.
- Point sınıfı için bir adet
constructortanımlayınız. İki değeri de set edebilmeli. - İlgili iki değişken için getter ve setter metodlarını tanımlayınız.
- Point sınıfı içerisinde bir tane
distanceisminde metod tanımlayınız. - distance metodu iki nokta arasındaki uzaklığı bulmaya yarar.
- Bu işlemin matematiksel olarak yapımı: √ (xB − xA) * (xB - xA) + (yB − yA) * (yB - yA) şeklindedir.
- √ işlemi karekök işlemini tanımlar.
Math.sqrtbu işlem için kullanılmalıdır. - distance metodu için 3 farklı
overloadingistenmektedir distance()hiçbir değer almazsa (0,0) noktasına göre uzaklık hesaplanmalı.distance(Point p)şeklinde başka bir Point objesi alırsa verilen noktaya göre uzaklık hesaplanmalı.distance(int a, int b)şeklinde 2 farklı int parametresi alınırsa (a,b) ye göre uzaklık bulunmalı.
Aşağıdaki gibi bir test yapılabilir.
INPUT Point first = new Point(6, 5);
Point second = new Point(3, 1);
System.out.println("distance(0,0)= " + first.distance());
System.out.println("distance(second)= " + first.distance(second));
System.out.println("distance(2,2)= " + first.distance(2, 2));
Point point = new Point(0,0);
System.out.println("distance()= " + point.distance());
OUTPUT distance(0,0)= 7.810249675906654
distance(second)= 5.0
distance(2,2)= 5.0
distance()= 0.0
- org.example paketi
Playerisimli bir sınıf oluşturunuz. - Sınıfın 3 tane değişkeni olmalı
String nameint healthPercentageWeapon weapon - Weapon org.example paketi altında bir enum olmalı.
- Weapon enumının değerlerinden bir tanesi
SWORDolmalı. İsteğinize göre başka değerlerde ekleyebilirsiniz. - Her weapon için bir adet
int damagevedouble attackSpeeddeğeri tanımlanmalı. Aynı zamana bu değişkenler için getter metodları da yazılmalı. - Tüm değişkenlere sadece bu sınıf içerisinden ulaşılabilinmeli.
- Değişkenler için getter ve setter metodları kesinlikle TANIMLANMAMALI.
- Sınıfın tek bir
constructormetodu olmalı ve bu 3 değeri set edebilmeli. - player objesi oluşturulduğu anda eğer healthPercentage 100'den büyük verildiyse, 100 değerine set edilmeli. Eğer healthPercentage 0'dan küçük verildiyse 0'a set edilmeli.
- Player sınıfı için 3 adet metod tanımlamalıyız.
healthRemainingmetodu healthPercentage değerini dönmeli.loseHealth(int damage)metodu damage değeri kadar healthPercentage değerinden düşmeli. Oyuncunun canı bir şekilde 0'değerinin altına düşerse,System.out.println(name + " player has been knocked out of game");değerini ekrana basmalı.restoreHealth(int healthPotion)metodu healthPotion miktarı kadar healthPercentage değerine ekleme yapmalı. Oyunucunun canı 100 değerinden yüksek bir değere çıkarsa tekrar geri 100 değerine eşitlenmeli.