J'ai le code ci-dessous.création d'objet dynamique en Java
public class Test {
public static void main(String args[])
{
int i = 0;
if(i==0){
Beer obj = new Beer();
}
else {
Rum obj = new Rum();
}
System.out.println(obj.brand); //doesn't work
} }
class Drink {
}
class Beer extends Drink{
public String brand = "BeerBrand"; }
class Rum extends Drink{
public String brand = "RumBrand"; }
- est-il un moyen de faire le travail ci-dessus sans utiliser la fonction ou le remplacement d'un chargement de classe dynamique?
- Toutes les classes sont chargées dynamiquement dans JVM il n'y a pas de chargement statique comme en C. Est-ce correct?
Mais on m'a demandé dans une interview la différence entre le chargement de classe statique et le chargement de classe dynamique dans Java? : P –
Il s'agit de termes mal utilisés pour lesquels il existe des réponses comme http://en.allexperts.com/q/Java-1046/2009/11/static-class-loading-vs.htm Dans tous les cas, la classe Java est chargée dynamiquement, mais la * liaison * des classes * nom * est statique (déterminée par la compilation javac) ou dynamique (déterminée à l'exécution) –