Từ tài liệu OutputStream.flush()
.Phương thức xả của OutputStream không làm gì?
Tại sao tiểu bang ở đây trong tài liệu là phương pháp tuôn ra OutputStream
không có gì sau khi giải thích rằng nó thực sự làm điều gì đó? Rất bối rối.
Từ tài liệu OutputStream.flush()
.Phương thức xả của OutputStream không làm gì?
Tại sao tiểu bang ở đây trong tài liệu là phương pháp tuôn ra OutputStream
không có gì sau khi giải thích rằng nó thực sự làm điều gì đó? Rất bối rối.
OutputStream
là lớp trừu tượng có nguồn gốc từ đó. Các lớp con sẽ cung cấp triển khai riêng của chúng nếu cần thiết. Nếu không, hành vi mặc định là không làm gì cả.
ví dụ: xem mã cho ObjectOutputStream.flush()
OutputStream
là một lớp trừu tượng. Ví dụ bắt nguồn phải ghi đè lên, nếu cần. Ví dụ: BufferedOutputStream
.
Các luồng không có bộ đệm có thể không cần ghi đè flush()
.
Không cần phải. Nó có thể chọn không để –
Giống như tất cả các lớp trừu tượng có thể lựa chọn, quá thực hiện hay không. – AlexWien
Nhưng bạn đã nói ở trên, ví dụ phát sinh * phải *. Đó là một chút mà tôi không đồng ý! –
Phần đầu tiên của văn bản mô tả hợp đồng chung của flush
. Các lớp học mở rộng OutputStream
được mong đợi tuân theo hợp đồng này.
OutputStream
là lớp trừu tượng, nhưng việc triển khai mặc định là flush
được cung cấp. Như được mô tả, việc triển khai thực hiện không có gì.
Có thể thay đổi. Nhưng vẫn còn một công thức kỳ lạ trong tài liệu. –