首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

同一个包中的类不能相互查看,也不能在终端中编译

。这是因为在Java中,包(package)是一种用于组织和管理类的机制。包可以理解为一个文件夹,其中包含了相关的类文件。

在同一个包中的类可以互相访问和调用,因为它们具有相同的包名。这意味着它们可以直接使用彼此的方法和属性,无需额外的导入操作。

然而,对于不同包中的类,如果没有进行特殊处理,是无法相互访问的。这是因为Java默认的访问修饰符是包级私有(package-private),即只有同一个包中的类才能访问。

如果想要在不同包中访问某个类,可以使用Java的访问修饰符来进行控制。常用的访问修饰符包括public、protected和private。

  • public:表示公开的,可以被任何类访问。
  • protected:表示受保护的,可以被同一个包中的类和不同包中的子类访问。
  • private:表示私有的,只能被同一个类中的其他方法访问。

在终端中编译Java程序时,需要使用javac命令,并指定要编译的Java源文件的路径。如果同一个包中的类相互依赖,编译时需要确保所有相关的类都被编译。

对于以上提到的问题,腾讯云提供了一系列与云计算相关的产品,包括云服务器、云数据库、云存储等。具体的产品介绍和链接地址可以参考腾讯云官方网站的相关页面。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

22张图带你了解IP地址有什么作用

上一篇了解了IP协议的各个字段的作用,以及提到了特别重要IP地址,在网络世界中作为通信识别的唯一寻址信息,让两台终端通信知道如何去跟回,其实网络世界更像我们现实世界的缩影,很多能在现实中找到相似的影子,特别在于寄信件的时候,里面最重要的就是地址信息,这个能是去往目的地的关键信息,现实中通过各个省份、城市、区县、区域来定位到具体位置,并且,这个地址是唯一的,不能出现重复,否则信件就不知道如何发送了,而在TCP/IP通信的网络世界中,为了保证正常通信,也是一样,需要有一个唯一并且能够寻址功能定位到目的地在哪的地址信息,这就是IP地址,所以每个设备都需要正确的IP地址,否则无法实现正常的通信,那它在网络世界中如何表示的呢?怎么去保证唯一性呢?

01
  • 《Objective-C基础教程》笔记

    1.xcode中,oc的.m文件代表message,指的是Objective-C的一个主要特性。 2.NS前缀的来历要追溯到次公局包还被成为NextStep,而且是Next Software公司时。 3.双引号前有一个@符号,这表示引用的字符串应该作为Cocoa的NSString元素来处理。 4.编译器使用“基地址加偏移”机制实现奇妙的功能。给定的对象基地址,是指第一个实例变量的首个字节在内存中的位置。通过在该地址加上偏移地址,编译器就可以查找其他实例变量的位置。 5.不要将get作为getter方法的前缀。因为get在Cocoa中有特殊的含义。如果get出现在Cocoa方法名称中,就意味着这个方法会通过你当做参数传入的指针来返回数值。 6.导入头文件有两种不同的方法:使用引号或者使用尖括号。带尖括号的语句用来导入系统头文件,带引号的语句则说明导入的是项目本地的头文件。也就是说,如果你看到的头文件名是尖括号,则这个头文件对你来说是只读的;如果头文件被双括号包围,则你可以编译它。 7.@class创建了一个前向引用。就是在告诉编译器:“相信我,以后你会知道这个类到底是什么,但是现在,你只需要知道这些。”如果有循环依赖关系,@class也很有用。即A类使用B类,B类也使用A类。如果试图通过#import语句让这两个类相互引用,那么最后就会出现编译错误。如果在A.h中使用@class B,在B.h中使用@class A,那么这两个类就可以相互引用了。 8.如果有些类型使用C的struct而不是对象,一定是因为性能。程序(尤其是GUI)会用到许多临时的点、大小和矩形来完成他们的工作。所有的Objective-C对象都是动态分配的,而动态分配是一个代价较高的操作,它会小号大量的时间。因此将这些结构创建成第一等级的对象会在使用过程中增加大量的系统开销。 9.比较两个字符串是否相等时,应该用isEqualToString:,而不是仅仅比较字符串的指针值。例如: if([thing1 isEqualTOString: thing2])和if(thing1 == thing2)是不同的。因为==运算符只能判断thing1和thing2的指针数值,而不是他们所指的对象。由于thing1和thing2是不同的字符串,所以第二种比较方式会认为他们是不同的。 有时,我们想检查两个对象的标识:thing1和thing2是同一个对象吗?这是就应该使用运算符==,如果想查看等价位(即这两个字符串是否代表同一个事物),那么请使用isEqualToString。 10.编译器和苹果公司都已下划线开头的形式保存实例变量名称,如果你尝试在其他地方使用下划线,可能会出现严重的错误。这条规则实际上不是强制的,但是如果不遵循它,你可能会遇到某种风险。

    02

    在越狱的iPhone/iPad上安装自开发环境

    自开发跟自编译意思一样,后者表示一个开发语言的开发能力成熟度;前者则表示一个开发平台的开发能力成熟度。 iPhone跟iPad面世这么多年,一直无法摆脱“娱乐”工具的宿命。Apple曾经希望通过iPad Pro为平台增添“生产力工具”的特征,但看起来成效不大。 而竞争对手的Surface Pro,虽然娱乐性不足,但没有人否认Surface Pro是一个优良的生产力工具。 在实用上,iPad跟Surface在于对文化创意类“生产力”的支持都不错。但是在其它方面,特别是软件开发之类的支持,iOS差的实在太多。 如果你有一台尚可越狱的iOS设备,那么通过社区的支持,这种情况可以有所缓解。虽然依然离“生产力”的要求差的比较远,但一些必要的基础性工作已经有很高的可用度了。

    01
    领券