Estou estudando pelo livro Use a cabeça Java! e la tem um exemplo que eles dão uma classe para usar até eles passarem a Scanner, essa classe que eles passam tem a única finalidade de receber uma entrada do usuário e retornar como uma string, ela só tem um método, seria correto/adequado usar static nesse método para eu não ter que ficar instanciando ela toda vez que precisar de uma entrada em uma outra classe? Agradeço desde já :lol:
Um método não deve ser static só porque é o único método de uma classe. Ele deve ser static quando seu uso justifica que ela seja static.
Um exemplo: classes utilitárias com métodos que dependem apenas dos parâmetros de entrada, não tendo nenhum estado interno mutável. Essas classes costumam ter nomes como “Util” ou “Helper”, como você já desconfiou.
[quote=entanglement]Um método não deve ser static só porque é o único método de uma classe. Ele deve ser static quando seu uso justifica que ela seja static.
Um exemplo: classes utilitárias com métodos que dependem apenas dos parâmetros de entrada, não tendo nenhum estado interno mutável. Essas classes costumam ter nomes como “Util” ou “Helper”, como você já desconfiou. [/quote]
É na verdade a justificativa para eu usar o static seria não ter que instanciar a classe toda vez só para usar esse método, pensei que no livro eles não usaram static por não ser tão OO dessa forma?! Ou talvez seja porque eles ainda não passaram os modificadores, já sei algumas dessas coisas do livro mas o pessoal fala tão bem do livro que decidi dar uma olhada, enfim obrigado, esclareceu totalmente.