类XXX是公共的, 应在名为 XXX.java 的文件中声明

原码如下:

public  class  Bird  {//bird类的fly方法public  void  fly () {System.out.println("我在天空自由的飞翔!");}
}
public  class  Ostrich  extends  Bird  {//重写Bird类的fly方法public  void  fly () {System.out.println("我不能飞,我只能奔跑");}public  static  void  main (String [] agrs) {//创建Ostrich对象 Ostrich  os = new  Ostrich();//执行Ostrich对象的fly()方法os.fly();}
}

编译结果如下:

E:\develop\code>javac  Ostrich.java
Ostrich.java:2: 错误: 类Bird是公共的, 应在名为 Bird.java 的文件中声明
public  class  Bird  {^
1 个错误E:\develop\code>

问题所在:

一个文件中有多个类,只有与文件名一致的类名,才能声明为:public
内部类不能声明为:public
一个文件中只能有一个public类

改进方法:
- 把class类写在一个以它的class名字为文件名的文件里

public  class  Ostrich  extends  Bird  {//重写Bird类的fly方法public  void  fly () {System.out.println("我不能飞,我只能奔跑");}public  static  void  main (String [] agrs) {//创建Ostrich对象 Ostrich  os = new  Ostrich();//执行Ostrich对象的fly()方法os.fly();}class  Bird  {//bird类的fly方法public  void  fly () {System.out.println("我在天空自由的飞翔!");}
}
}

结果如下:

E:\develop\code>javac OStrich.javaE:\develop\code>java Ostrich
我不能飞,我只能奔跑

注:
也可以将两个class类保存在不同的文件夹

类XXX是公共的, 应在名为 XXX.java 的文件中声明相关推荐

  1. 类Loopy是公共的, 应在名为 Loopy.java 的文件中声明

    代码是这样的: public class Loopy {public static void main(String[] args){int x = 1; System.out.println(&qu ...

  2. helloworld.java:1: 错误: 类HelloWorld是公共的, 应在名为 HelloWorld.java 的文件中声明 public class HelloWorld

    在cmd命令行中,使用javac编译时(javac helloworld.java),出现这样的提示错误: helloworld.java:1: 错误: 类HelloWorld是公共的, 应在名为 H ...

  3. java 高级holleword_HelloWord.java:1: 错误: 类Helloworld是公共的, 应在名为 HelloWorld.java 的文件中声明...

    文件名helloWorld.java 源码: public class Helloworld { public static void main(String[] args) { System.out ...

  4. 错误:类 SubClass 是公共的, 应在名为 SubClass.java 的文件中声明

    原因及解决方法:每一个JAVA文件中只能有一个public类文件 当有多个类时,只需要将主类public保留即可 其他类不加public

  5. 类 Test01 是公共的, 应在名为 Test01.java 的文件中声明

    我新建了一个java文件,名为:test1.java 在文件里面写入了如下代码: public class Test01 {public static void main(String[] args) ...

  6. 用记事本编写第一个Java程序运行时 出现报错:错误: 类helloworld是公共的, 应在名为 helloworld.java 的文件中声明 public class helloworld {

    在书本上盲人摸象的摸索学习Java,Java环境配置完成,安装好eclipse后,便兴冲冲的去在记事本上编写第一个Java程序,结果给破了一盆冷水,略懵 public class helloworld ...

  7. 错误:类 xxx 是公共的, 应在名为 xxx.java 的文件中声明

    此错误是因为类名和类文件名不一致造成的,我之前遇到是因为类名书写没有遵循驼峰规则,于是改了一下类名,但是类文件名没有改,启动项目时报错.

  8. 类 XX 是公共的, 应在名为 xxx.java 的文件中声明

    注意蓝色的要命名成一样的  改好后,就运行成功了

  9. file类实现输出目录以及子目下的结尾为.java的文件;

    package com.xyf.demo.file类实现输出目录以及子目下的结尾为.java的文件; import java.io.File; import java.util.Locale; pub ...

最新文章

  1. Java Review - 并发编程_StampedLock锁探究
  2. OpenGL相机控制之一
  3. 【CodeForces - 1066A~E】水题,模拟(有技巧),思维,题意难懂的模拟,二进制问题(有技巧)
  4. 10月21日下午PHP常用函数
  5. 【kafka】kafka topic某些分区 副本落后leader太多
  6. 的it生活_IT行业是干啥的
  7. SQL Server 2005存储过程示例
  8. 帆软控件焦点事件设置可用性
  9. ignite集成mysql_Ignite集成Spark之IgniteDataFrames
  10. C语言之基本算法34—分解质因数(方法一)
  11. CSGO常用地图实体列表
  12. java jar包转成exe运行
  13. 北漂小斌和你分享宋代建筑模数斗拱材分制的学习方法以及CAD案例图纸
  14. RecyclerView中的Item无法填充满的问题
  15. mac改变ipv4地址无法上网
  16. 这三款软件让你实现PDF批量转图片
  17. java反射机制是什么_java的反射机制是什么?
  18. 取消google二次验证码要怎么进行处理
  19. fabric多节点网络环境搭建(v2.2)
  20. 区块链报告会心得体会3000_心得体会范文3000字

热门文章

  1. [纵横网络靶场社区]简单流量分析
  2. matlab step函数的用法,matlab中step用法
  3. 长春理工大学第十四届程序设计竞赛(重现赛)
  4. java蜘蛛纸牌教学视频_南通java学习班费用
  5. 软件不同版本区别:alpha-beta-release-GA
  6. PM如何整合资源——来自项目管理群的讨论[转]
  7. 电子商务网站服务器构建,电子商务网站构建技术及应用研究
  8. C语言将分数转为小数
  9. 20以内分数化小数表_初等数学33-百分数
  10. 体重指数(BMI)计算器