小问题

fuli_90121 2002-06-21 12:18:17
以下程序不能编译通过
import java.import java.io.*;
import java.lang.*;
import java.util.*;
public class test {
public static void main(String argv[]) {
String item1="xwf";
String item2;

......
item2=item1.clone();
System.out.println(item1);
System.out.println(item2);
}
}
编译错误信息:
test.java:27: clone() has protected access in java.lang.Object
item2=item1.clone();
^
test.java:27: incompatible types
found : java.lang.Object
required: java.lang.String
item2=item1.clone();
^
请高手赐教
在线



...全文
69 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fuli_90121 2002-06-21
  • 打赏
  • 举报
回复
protected的定义好象是方法所有者类及其子类可以使用,但在这个程序中
item是String,而它为什么就不能使用String的protected方法呢?可以再解释
详细些吗?
yakuu 2002-06-21
  • 打赏
  • 举报
回复
clone()是String类的protected方法。
如果你要用的话,写一个String的继承类。
fuli_90121 2002-06-21
  • 打赏
  • 举报
回复
to kamanwu(kaman)
错误边变为:
test.java:27: clone() has protected access in java.lang.Object
item2=(String)item1.clone();
^
kamanwu 2002-06-21
  • 打赏
  • 举报
回复
item2=(String)item1.clone();
kamanwu 2002-06-21
  • 打赏
  • 举报
回复
item2=(String)item1.clone();
kamanwu 2002-06-21
  • 打赏
  • 举报
回复
item2=(String)item1.clone();
johnytian 2002-06-21
  • 打赏
  • 举报
回复
public class test implements Cloneable{
public String strValue;
public int intValue;
public test(String str,int i)
{
this.strValue=str;
this.intValue=i;
}
public test()
{
}
public static void main(String argv[]) {
test test1,test2;
test1=new test("Clone test",0);
test2=new test();
try
{
test2=(test)(test1.clone());
}
catch(CloneNotSupportedException e)
{
System.out.println(e.getMessage());
}
System.out.print(test1.strValue+" ");
System.out.println(test1.intValue);
System.out.print(test2.strValue+" ");
System.out.println(test2.intValue);
}
}
kamanwu 2002-06-21
  • 打赏
  • 举报
回复
public final class String
extends Object

String不能被extend.

protected方法再它的子类中能用。但是你的程序不能用。public才可以。
内容概要:本文深入剖析了ext4文件系统的设计理念与核心技术,揭示其作为“老将”在Linux和Android生态中持久不衰的原因。ext4继承自为机械硬盘优化的ext2/ext3家族,采用块组、位图、inode表等结构保障磁头寻道效率,并通过稀疏超级块、flex_bg等机制优化布局。其核心创新包括引入extents替代传统多级间接指针,大幅提升大文件寻址效率;支持延迟分配以降低碎片率;启用64bit模式突破容量限制。日志系统jbd2提供三种写入模式(journal/ordered/writeback),在安全性与性能间灵活权衡,确保崩溃后快速恢复。此外,ext4配备fallocate、hole punch、e4defrag等现代工具,支持稀疏文件、在线扩容与碎片整理,并通过metadata_csum增强元数据完整性检测。在Android系统中,ext4虽非userdata主文件系统,却广泛用于metadata、misc、persist等“小而关键”的分区,凭借高可靠性与成熟修复工具成为系统稳定性的基石。最后,文章通过f2fs、ext4、EROFS三者在设计初衷、写入方式、压缩能力等方面的七维对照,阐明“没有银弹”的选型心法:不同介质与负载需匹配最适合的文件系统。; 适合人群:具备一定操作系统基础知识的开发者、存储系统工程师、Android系统研发人员及对文件系统原理感兴趣的技术爱好者。; 使用场景及目标:①理解ext4为何能在闪存时代仍被广泛用于关键小分区;②掌握extents、jbd2日志、延迟分配等核心技术原理;③对比f2fs、ext4、EROFS在不同应用场景下的优劣,指导实际选型决策。; 阅读建议:此资源兼具技术深度与历史视角,建议结合姊妹篇①(Android存储架构)与②(f2fs闪存优化)对照阅读,以构建完整的文件系统认知体系。对于关键章节如日志机制与三系统对照表,建议反复研读并结合内核文档与实际命令(如tune2fs、e2fsck)进行实践验证。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧