Java’da Metodlar 5 (Methods)
Sabit Metodlar(Static Methods)
Static metodlar her nesne için aynı işleri yaparlar ve bir daha ayrı ayrı oluşturmaya gerek kalmaz.Böylece bellekten kazanç sağlanmış olur. Bir diğer kullanım yöntemi ise nesne oluşturmadan sınıf içerisinde metodlara
erişebilmektir. Şimdi örneklerimize bakarak daha iy bir şekilde anlayalım;
1 2 3 4 5 6 7 8 9 10 11 12 |
package metodlar; public class staticMetod { public static int method(int a,int b) { return a+b; } public static void main(String[] args) { System.out.println(staticMetod.method(9,5)); } } |
Örneğimizde gördüğünüz gibi statik bir meto doluşturduk ve bu metoda sınıAdı.metodAdı ile erişebildik.
Şimdi ise static olarak tanımlanan Math sınıfı ile bir örnek yapalım;
1 2 3 4 5 6 7 8 9 10 11 |
package metodlar; public class staticMath { public static void main(String[] args) { int a=17; System.out.println((double)Math.sqrt(a)); } } |
Bu örnekte Math sınıfının metodu kendi içinde statik olarak tanımlı olduğundan direk sınıf adı ile çağırabiliriz. Yukarıda kök alma işlemini sqrt() metodunu nesne oluşturmadan doğrudan Math.sqrt() ile çalıştırabildik.
Başlarken söylemiştik statik metodlar her nesne için ayrı ayrı oluşturulmaz, tek bir statik metod tanımlayarak tüm nesneler ortak kullanır. Örneğimize bakarak inceleyelim;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
package metodlar; public class statikNesne { public static int x; public static void metod(int a) { x=a; } public static void main(String[] args) { StaticMetod s1=new StaticMetod(); StaticMetod s2=new StaticMetod(); s1.metod(20); s2.metod(23); System.out.println(s1.x); System.out.println(s2.x); } } |
Burda oluşturduğumuz static metodumuz ile 2 nesneyede eriştik fakat kodu çalıştırdığınızda görüceksinizki 2 değer 23 olacaktır, bunun sebebi static metodun nesneye değil, sınıfa ait olmalarıdır. Arkadaşlar bu bölümde Java’da Metodlar bölümü’nün Static metodları yani türkçe karşılığı olan, Sabit metodları anlatmaya çalıştık takibiniz için teşekkürler…Bizi takip etmeye devam edin bol kodlu günler…