Classes Internas 3

7 respostas
M

ok, debug it! tem algum erro? qual é a saida? :?:

package com.foo;

public class Test3 {

	Test3()
	{
		PortalJava pj = new PortalJava(
		
			new Foo() {
				
				public void doStuff()
				{
					System.out.println( "alê!" );
				}			
			}		
		)
	}
	
	public static void main( String [] args )
	{
		new Test3();
	}

}

interface Foo {

	void doStuff();

}

class PortalJava {

	PortalJava( Foo f ){
	
		f.doStuff();
	}

}

7 Respostas

H

Bati os olhos no teu código e vi que falta um ‘;’ depois do parêntes.

Acertei?

T+

M

graaande hipersoft, mas tu é uma águia heim… hehae

:uy:

H

bati o dedo no botão compilar e vi que tem um porém aí… além do ;

M

…qual porém? :roll:

F

acho q da erro pq a classe PortalJava n aceita construtor sem argumentos… e como a classe interna anonima n faz uma chamada explicita para um superconstrutor, o q seria chamado seria o defalt (sem argumentos), dai o erro…

M

nao felipe, fora o “;”, não há erro nenhum, a classe PortalJava realmente nao tem construtor sem argumentos nesse caso, mas tb não estamos utilizando ele no código, estamos instanciando um novo PortalJava passando um objeto q implementa Foo

F

pois eh, eu tinha me enganado hauahuahuahauahuauhauh eu tinha dado uma olhada rapida e pensei q a classe interna tava herdando de PortalJava, n de Foo hehehehehe, isso q da nem ler o codigo direito e jah querer achar erro ahauhauhauhau

mals ae

Criado 24 de julho de 2004
Ultima resposta 31 de jul. de 2004
Respostas 7
Participantes 4