Why Cantonese is considered as a dialect of Chinese? Can someone explain why Cantonese is considered as a dialect of Chinese, instead of a language? It is also for any language exist in China, both land and Taiwan (Cantonese, Hunanese, Fujianese, Taiwanese, etc.).

AFAIK, dialect is differ from language. Just like in Indonesia: Javanese, Sundanese and Madurese is considered as a language, not a dialect. But, Javanese is called as a dialect when someone speak Indonesian language with Javanese accent.

But, for Cantonese (or any other languages listed above), although you speak Cantonese, Chinese will considered it as a dialect, not a language. You know that, Cantonese and Mandarin is 'completely' different each other.
From Wikipedia:


  There is no universally accepted criterion for distinguishing a
  language from a dialect.


My hunch is that in general Chinese politics favors unity, whereas European politics favors separation, thus speakers of Dutch and German would hate to think that they were speaking dialects of the same language. Conversely in general it is useful for the notion of Chinese unity, that there is only one "Chinese", although in fact there are many spoken languages within the peoples considered Chinese, that are considered separate languages.

Note that (accoring to WP) the distinction is so unclear that some linguists consider "Dialect" and "Language" to be synonyms, and that a dialect can also be a language. Thus "Hokkien is a language that is a dialect of Chinese" would not be an illogical statement.