As you know, many Japanese cannot speak English. If you have ever visited Japan for sightseeing and talked to them, you would understand. Probably they could not speak English and could not communicate with you.
Japanese people study English for three years in junior high school and three years in high school. In examinations, whether one is good at English or not (strictly speaking, whether one can read or not) determines whether one passes or fails. Therefore, they study English hard. Nevertheless, They graduate from college without being able to speak English.
Why can't Japanese people speak English? As Japanese, I will write about it.
(I'm not a fluent English speaker myself)
1. Japanese do not train to speak English in school.
Firstly, Japanese do not train to speak English in school. In Japanese school, students study English grammar and reading long passages in English. They rarely study to speak English. They study the "knowledge" to speak English, but have few opportunities to actually speak English. That is because in Japanese schools, one teacher teaches 30 to 40 students. This means that some students will end up not being able to speak English even when they have the opportunity to do so. For this reason, they do little training to speak English.
2. Japanese don't need to speak English to live in Japan.
Secondly, fortunately or unfortunately, one can live in Japan without speaking English. They don't have to speak English, so they don't have to train to speak English desperately.
Oh my God!
Japanese who work for some foreign companies, English teachers, and prep school instructors can speak English, but those who do not speak English on a daily basis cannot. There are plenty of English reference books in Japan, clothing with English logos, and English is all around us, yet many Japanese don't speak it!
3. Difficulties with language structure
Thirdly, the reason why Japanese people cannot speak English is because of the difficulty of the English language structure. The linguistic structures of Japanese and English are quite different. For example, the word order in Japanese is subject, predicate, verb, while in English it is subject, verb, predicate.
私はごはんを食べる。(watashi ha gohan wo taberu)→subject, predicate, verb
I eat lunch. →subject, verb, predicate
This is a simple example, but the more complex the grammar, the more pronounced the differences between Japanese and English language structures become. Japanese are not very aware of this difference in language structure, but for my part, I believe that this difference in language structure is what makes learning English so difficult.
For these three reasons, many Japanese cannot speak English. However, don't get me wrong, just because the Japanese do not speak English does not mean that they are not willing to learn English. The reasons why Japanese people cannot speak English can be educational or cultural issues.
summary
The reason why many Japanese cannnot speak English is
・not train to speak English in school
・no need to speak English in Japan
・the difficulty of the English language structure