Quantcast
Channel: Programação - GUJ
Viewing all articles
Browse latest Browse all 33093

Dúvidas sobre encapsulamento, modificadores de acesso e composição

$
0
0

@Leo_Magalhaes escreveu:

Esse código compila? Estou usando o compilejava.net pois estou em um ambiente onde não posso instalar nada. Não consigo achar o erro, e já percebi que esse compilador online tem certas "peculiaridades".

public class MyClass {
    private int param;
    
    public void MyClass(int i) {
        this.param = i;
    }
    public int getParam() {
         return param;
    }
}

public class MyCompClass {
    MyClass myObj;
    public void MyCompClass() {
          int i = 1234;
        myObj = new MyClass(i);
    }
    public void setValue(int i) {
        myObj = new MyClass(i);
    }
}

public class MeuPrograma { 

    public static void main(String[] args) {
    MyCompClass teste = new MyCompClass();
    System.out.println("O valor do parametro e " + teste.myObj.getParam());
    teste.setValue(0);
    System.out.println("O valor do parametro e " + teste.myObj.getParam());
    }
}

Ele retorna o seguinte erro:

/tmp/java_Cdo9Nm/MyCompClass.java:5: error: constructor MyClass in class MyClass cannot be applied to given types;
myObj = new MyClass(i);
^
required: no arguments
found: int
reason: actual and formal argument lists differ in length

O que não fez o menor sentido para mim. Estou estudando pela apostila Caelum ao mesmo tempo em que desenvolvo um aplicativo, queria entender isso para poder fazer um software bem feito.

Mensagens: 6

Participantes: 3

Ler tópico completo


Viewing all articles
Browse latest Browse all 33093


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>