Jump to content
mundo

Encapsulamento

Recommended Posts

mundo

Antes de mais boa noite

Estou aqui com um pequeno problema com um exercico de java, em que o que neste momento preciso é que devolva o path name do elemento (Pastas e ficheiros desde a sua raiz)

Tenho o seguinte codigo

public class Element {
    
    public enum ElementType { ROOT, FOLDER, FILE };
    
    private String name; // The element's name
    private ElementType type = ElementType.ROOT; // Defaut element type
    private Element parent_folder = null; //The element's default parent folder
    
    /* Creates a new instance of Element */
    
    public Element (String name, ElementType type, Element parent_folder){
    
        this.name = name;
        this.type = type;
        this.parent_folder = parent_folder;
    }
    
    /* Creates a new instance of Element corresponding to the root folder 
     * 
     * @param name The element's {@link Element#name name}
     */
    
    public Element (String name) {
        
        this.name = name;
        this.type = ElementType.ROOT;
    } 
    
    public String getName(){
        return name; //Return the name
    }
    
    /* param name the name to set */
    
    public void setName( String name ){
        this.name = name;
    }
    
    public ElementType getType () {
        return type; //Return the type
    }
    
    /* param type to type set*/
    public void setType ( ElementType type) {
        this.type = type;
        
        if( type == ElementType.ROOT)
            this.parent_folder = null;
    }
    
    /* Return the parent folder element*/
    public Element getParentFolder(){
        return parent_folder;
    }
    
    public void setParentFolder ( Element parent_folder ) {
        this.parent_folder = parent_folder;
        if (parent_folder == null)
            this.type = ElementType.ROOT;
    }
    
    public isRootFolder(){
        if ( type == ElementType.ROOT){
            
        }
    }
    
    public String getPath(){
        String result = "";
        
        if ( isRootFolder() == false ) {
            result += this.parent_folder.getPath();
            result += "\\";
        }
        result += this.name;
        
        return result;
    }
}

A parte que me está a falar é dentro do isRootFolder() tou com quase 100% certeza qe está mal, pergunta nerd mas alguem me pode ajudar sobre o que colocar lá dentro e uma breve explicaçao?

Os melhores cumprimentos

Share this post


Link to post
Share on other sites
brunoais

Porque não:

    public boolean isRootFolder(){
        return type == ElementType.ROOT;
          
    }

?


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
brunoais

Tens razão. Tinha-me esquecido de verificar isso. Resolvido.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
mundo

Será algo tipo:

 public Boolean isRootFolder(){
        return type == ElementType.ROOT;
          
    }

certo?

Share this post


Link to post
Share on other sites
brunoais

Cada vez vai pior...

É parecido com esse. Agora já acredito estar bem.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
mundo

Estou me a iniciar em java é normal que tenha dumb questions :)

Tipo não tou a conseguir chamar o metodo getPath() para verificar se está mesmo a funcionar. Não é declarado da seguinte forma no test main:

Element path = new getPath();

System.out.println ( "Hello I'm " + path.getPath() );

?

Share this post


Link to post
Share on other sites
mundo

Ou tou muito dumb, ou nao sei lol, nao estou a obter o output que pretendo >.<

Share this post


Link to post
Share on other sites
mundo

O output que pretendo é +- este: "Path: C:\\fileA.ppt\folderB\fileC.xls\fileD.doc"

desculpem o dual post

Os melhores cumprimentos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.