web-dev-qa-db-fra.com

Importation de packages dans Java

Comment importer une méthode d'un package dans un autre programme? Je ne sais pas comment importer ... J'écris un lil 'code:

package Dan;
public class Vik
{
    public void disp()
    {
        System.out.println("Heyya!");
    }
}

et ensuite, sauvegardé dans un dossier nommé "Dan" et je l'ai compilé. Le fichier .class est généré. Ensuite, j'ai écrit ce code ci-dessous:

import Dan.Vik.disp;
class Kab
{
    public static void main(String args[])
    {
        Vik Sam = new Vik();
        Sam.disp();
    }
}

et je l'ai enregistré en dehors du dossier "Dan" et il dit: "ne peut pas trouver le symbole"

J'ai enregistré le premier code dans C:\Dan\Vik.Java et le second dans C:\Kab.Java

25
Daniel Victor

Vous n'importez pas de méthodes en Java, seulement des types:

import Dan.Vik;
class Kab
{
    public static void main(String args[])
    {
        Vik Sam = new Vik();
        Sam.disp();
    }
}

L'exception est appelée "importations statiques", ce qui vous permet d'importer des méthodes de classe (static) à partir d'autres types.

18
Gustav Barkefors

Dans Java vous ne pouvez importer que noms de classe, ou statique méthodes/champs.

Pour importer une utilisation en classe

import full.package.name.of.SomeClass;

importer des méthodes/champs statiques

import static full.package.name.of.SomeClass.staticMethod;
import static full.package.name.of.SomeClass.staticField;
10
Pshemo

Sortez le nom de la méthode dans votre déclaration d'importation. par exemple.

import Dan.Vik.disp;

devient:

import Dan.Vik;
8
Chris Brautigam

Tu devrais utiliser

import Dan.Vik;

Cela rend la classe visible et ses méthodes publiques disponibles.

2
ncmathsadist

Non non non non, Daniel, ce n'est pas la façon de faire des importations en Java.

import Dan.Vik;
class Kab
{
public static void main(String args[])
{
    Vik Sam = new Vik();
    Sam.disp();
}
}

Vous n'importez pas de méthodes en Java. Il existe une utilisation avancée des importations statiques, mais en gros, vous importez uniquement des packages et des classes. Si la fonction que vous importez est une fonction statique, vous pouvez effectuer une importation statique, mais je ne pense pas que vous recherchiez des importations statiques ici.

2
Apurv

Dans Java, vous ne pouvez importer que des noms de classe ou des méthodes/champs statiques.

Pour importer une utilisation en classe

import full.package.name.of.SomeClass;

Nous pouvons également importer des méthodes/champs statiques dans Java et voici comment importer

import static full.package.nameOfClass.staticMethod;
import static full.package.nameOfClass.staticField;
1
Mahee Gunturu

Pour le deuxième fichier de classe, ajoutez "package Dan;" comme le premier, afin de s'assurer qu'ils sont dans le même paquet; modifier "importer Dan.Vik.disp;" être "importer Dan.Vik;"