"Ana" sınıfım için kurucuyu yazıyorum. Yaptığı ilk şey, komut satırı ayrıştırmak için commons-cli kullanmak için bir yöntem çağırmaktır. parseOptions
yöntemi yanlış döndürürse, bir hata oluştu ve kurucudan çıkmalıdır. Scala kurucusundan erken dönüş
if (!parseOptions(args)) return
yazmaya çalıştı ama derleyici bir "Döndürme deyimi dışında yöntem tanımı" olduğunu şikayet ediyor. System.exit(1)
arayarak veya boolean tersini (ve if
deyimi içinde benim mantık geri kalanının hepsi koyarak Kısa
, bir yapıcı gelen "erken" dönmek için herhangi bir yolu var mı?
Ben var herhalde getiri yan etkileri olabileceğinden parseOptions
yöntemi bir IllegalArgumentException
atmak ve benim Main
nesnede Anlaşılmadıyamadım.
teşekkürler.
Ben edemedi eğer hiçbir yapıcı normalde döndürmesi gerektiğini diğer cevaplarla kabul ederken Örneğini sınıfının değişmezlerini tatmin eden bir duruma sokmak için, neden 'if' kullanmanın niçin olduğunu merak ediyorum. –
Tüm bunlar erken bir dönüşle sonuçlanabilecek bazı koşullara sahip olsaydı, bir "if" kaskatı çok seviyeli derinlerle sonuçlanacağım. – Ralph
Peki? Yapıcınızın mantığı buysa, bu sizin kurucunuzun mantığıdır. Ayrıca, genellikle, yapıcılarınızda çok fazla karmaşık mantığa sahip olmamanız tavsiye edilir. İdeal olarak, örneğin devletin durumunu/değerini oluşturan değerleri "vurgular". –