how to use nested class in another class in java?

眉间皱痕 提交于 2019-12-04 12:17:50

问题


I have some situation that I want to use inner class of another class in another class. like...

public class ListData {
    public  static class MyData {

        public String textSongName, textArtistName, textDuration, textDownloadPath,
                textSongSize, textAlbumName, textUrl;
        public boolean enable;

        public MyData(String songName, String artistName, String duration,
                String downloadPath, String songSize, String albumName,
                String url, boolean e) {
            textSongName = songName;
            textArtistName = artistName;
            textDuration = duration;
            textDownloadPath = downloadPath;
            textSongSize = songSize;
            textAlbumName = albumName;
            textUrl = url;
            enable = e;
        }
    }

}

now I want to use Mydata class in another.

how can I do this?

Thanks.


回答1:


ListData.MyData myData = new ListData.MyData();



回答2:


Static Nested Classes

OuterClass.StaticNestedClass nestedObject = new OuterClass.StaticNestedClass();

Inner Classes

OuterClass.InnerClass innerObject = outerObject.new InnerClass();

More about Nested Classes




回答3:


If you can create inner class object from other class that is out of scope from your enclosing class than you should use its fully qualified name.... Here , your outer class is ListData and your Inner class is Mydata and we call Mydata from another class eg. YourData.. than we can use below statement..

Syntax : outerclass.innerclass = new outerclass.innerclass();

=> ListData.MyData objectname = new ListData.MyData();

NOTE : this can use only when innner class is static..



来源:https://stackoverflow.com/questions/4861488/how-to-use-nested-class-in-another-class-in-java

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!