ti-enxame.com

Classes não podem ser acessadas de pacotes externos

Eu tenho dois pacotes. A classe que eu quero importar do primeiro pacote é declarada como PUBLIC. Apesar disso, quando eu testo um arquivo do segundo pacote, ele me mostra erros de compilação como este:

PUBLICclass não é público em mypackage; não pode ser acessado de um pacote externo

Tentei adicionar um construtor público à classe desde o primeiro pacote, mas isso não faz nenhuma diferença.

Você tem alguma ideia? Eu uso o Netbeans 7.

A classe do primeiro pacote é exibida abaixo:

public class PUBLICclass extends AbstractClass { public PUBLICclass() { } }
34
deem

Deixe-me adivinhar

Sua declaração inicial da classe PUBLICClass não era pública, então você a tornou `Pública ', você pode tentar limpar e reconstruir seu projeto?

45
mprabhat
public SmartSaverCals(Context context)
{
    this.context= context;
}

adicionar público ao Seu construtor.no meu problema resolvido

19
Sai Gopi N

Verifique o construtor da superclasse padrão. Precisa ser público ou protegido.

3
dellasavia

Por acaso, você tem duas classes PUBLICclass em seu projeto, onde uma é pública (a qual você publicou a assinatura aqui) e outra que é visível no pacote, e importa a errada no seu projeto código?

0
Robin

Talvez você deva tentar remover a palavra-chave "nova" e ver se funciona. Porque na última vez que recebi esse erro, tentei criar Typeface algo como isto:

Typeface typeface = new Typeface().create("Arial",Typeface.BOLD);
0
M9J_cfALt

closeDrawers(boolean) não é público em Android.support.v4.widget.DrawerLayout. Não pode ser acessado de um pacote externo

@Override
public void onBackPressed() {
    if (drawer.isDrawerOpen(GravityCompat.START)) {
        drawer.closeDrawer(GravityCompat.START);
    } else {
       super.onBackPressed();
    }
}
0
Subroto Basak Shawon

Observe que o padrão quando você cria uma classe não é público na medida em que os pacotes são considerados. Certifique-se de realmente escrever public class [MyClass] { ao definir sua classe. Eu cometi esse erro mais vezes do que gostaria de admitir.

0
Scott Biggs