Ben java bir acemi değilim ve bu bir yöntem nesneleri geçen bir sınıf örneği tarafından yöntemini çağırarak daha etkilidir clarification.Is istiyorum O same.Suppose Aşağıdaki örnek kod bana bakıyor:?Nesne yöntemini geçirme yöntemi nesneye göre çağırmaktan daha etkili midir?
Ben geçersiz yöntemi kullandığınızdapublic class Test {
public static void main(String[] args) {
CircleWithPrivateDataFields myCircle = new CircleWithPrivateDataFields(5.0);
printCircle(myCircle);
}
public static void printCircle (CircleWithPrivateDataFields c) {
System.out.println("The area of the circle of radius "
+ c.getRadius() + " is " + c.getArea());
}
}
Ben CircleWithPrivateDataFields
sınıfını tanımlamak, bu geçiş yöntemi console.Also üzerinde yazdırılır printCircle
yöntemi nesne, genellikle, ben konsolda geçersiz yöntemi yazdırmak için ana yöntemle System.out.print(void method);
içine yazmaya gerek ama ne zaman Nesneyi yöntemde geçiririm, buna ihtiyacım yok.
hiçbir geçerli bir fark yoktur - böyle endişesi sadece kötü tasarlanmış kod yol açacaktır. Java bytecode (ve işin) sanal bir yöntem ve statik yöntemi çağırmak için gerekli biraz farklı olmakla birlikte, bu muhtemelen bir uygulama/akademik soru olarak ele alınmalıdır. – user2864740
Sorunuz anlamsızdır, çünkü "verimli" terimi burada gerçekten geçerli değildir. Mantıklı olan, tek sorumluluğu olan, düşük bağlanma ve yüksek bir bütünlüğe sahip sınıflar yaratma konusunda daha fazla endişelenirim. –
Ben ne söylediğini anlıyorum ama böyle endişeleri netleştirmek yoksa, büyük ihtimalle ben bir acemi ve bir kalkınan öğrenci, ben usta programcılar için saçma geliyor olsa bile, bu öğrenmek için üzerime görevdeki olduğunu düşünüyorum learn.As asla vardır ben de senin gibi olacak you.One günü gibi;) bazı teknik detaylar için –