Olá,
Estou estudando java e sou iniciante, quero me tornar um dev e com isso não quero deixar nenhuma duvida para trás. Enfim, o toString só pode ser usado por atributos da classe?? pois eu não consigo atribuir funçoes da classe no mesmo.
Vc pode explicar melhor o que vc está tentando fazer? Se puder mostra o código que tentou e não conseguiu.
De qualquer forma, o toString é um método como qualquer outro, vc pode invocar outros métodos dentro dele.
Vc poderia fazer algo assim, por exemplo:
class Person {
private String name;
private int age;
Person(String n, int a) {
name = n;
age = a;
}
int getAge() {
return age;
}
String getName() {
return name;
}
@Override
public String toString() {
return String.format("Person[name=%s, age=%d]", getName(), getAge());
}
}
public class Main {
public static void main(String... args) {
System.out.println(new Person("Junior", 20));
}
}
Também sou novo e uso toString da seguinte forma: Integer to String.
Exemplo 1: tenho um tela de cadastro onde salvo numero no mysql como integer e para mostrar em um campo no formulário, aceita string, tenho que capturar como int e usar o toString para inserir ele no campo.
Acho que não entendi sua ideia ainda. Para mim não faz sentido invocar os métodos somar() e subtrair() dentro do toString().
De qualquer forma, é como eu disse, vc consegue sim invocar métodos de dentro do toString, mas vc tem que invocar com os argumentos corretos, tipo assim: