作者qrtt1 (有些事,有时候。。。)
看板java
标题Re: [语法] BufferedWriter 书上的错误
时间Tue Jun 18 19:25:30 2019
※ 引述《akk98 (akk)》之铭言:
: import java.io.BufferedWriter;
: import java.io.IOException;
: public class FileWriter {
: public static void main(String[] args) {
: try {
: String fpath = "D:/abc/test.txt";
: BufferedWriter fout = new BufferedWriter(new FileWriter(fpath));
: fout.write("花花世界看看世界");
: fout.newLine();
: fout.close();
: System.out.println("写档完成");
: }catch (IOException e) {
: e.printStackTrace();
: }
: }
: }
: BufferedWriter fout = new BufferedWriter(new FileWriter(fpath))
: 这行出错误了 是版本问题吗? 还是少了甚麽???
先简单地,复制你的 code 来 compile
=================================================================
qty:Downloads qrtt1$ javac FileWriter.java
FileWriter.java:10: error:
constructor FileWriter in class FileWriter
cannot be applied to given types;
BufferedWriter fout = new BufferedWriter(new FileWriter(fpath));
^
required: no arguments
found: String
reason: actual and formal argument lists differ in length
1 error
qty:Downloads qrtt1$
它说,你写的 FileWriter 的建构子,不能塞你指定的 type
[----]
实际上
需求是无引数,由於你的 FileWriter 并没有写一个建构子,
依规格,它自动提供一个无引数建构子。在处理真正的问题前,
弄懂目前的 error message 其实挺有意义的啊。
======================================================================
你得知道
1. error message 的描述是什麽
2. 为什麽它要求建构子不能传参数进去
3. 建构子的定义是什麽
4. 什麽时机会自动产生无引数建构子
5. 怎麽加个建构子,让它接受引数 (虽然跟实际问题无关..)
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.231.150.129 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1560857132.A.EF0.html
1F:→ adrianshum: 我猜他单纯改了不该改的名字而已。他并不是想create 06/19 19:26
2F:→ adrianshum: 他的FileWriter instance 而是想用java.io 那个 06/19 19:26
希望谜底有揭晓的一天xd
※ 编辑: qrtt1 (36.231.150.129 台湾), 06/19/2019 20:14:41
3F:推 maxima: 我在他那篇推文回他了,就是FileWriter的建构子不能直接 06/22 10:38
4F:→ maxima: 放字串,要放File物件 06/22 10:38
5F:→ Eryngium: 楼上先去仔细看一下java doc吧, 原po的问题根本不是这 06/22 12:57
6F:→ Eryngium: 样 06/22 12:57
7F:→ akk98: 不好意思 我不知道哪个是正确的 因为现在就是还没跑 06/22 16:06
8F:→ akk98: 就编译错误了 我在猜想是不是版本问题 06/22 16:06
那表示你没看懂书,要不先把书的内容拍来,大家看看。
你也顺便说说你的理解才好继续,虽然答案很简单,但思考的过程才是对你有价值的
※ 编辑: qrtt1 (36.231.150.5 台湾), 06/22/2019 22:27:08