当我们或许是煞费苦心所敲的代码无法运行时,可能我们更多想到的不是自己所敲的代码存在错误,而是系统或者某些外在的客观的原因。多次的运行失败之后,渐渐的意识到很多错误并不是系统的外在的原因,而是自己丢三拉四的缘故,下面就结合自己所敲的寥寥的代码总结一下Java程序不能运行的几种原因。

一. 系统存在问题(运行环境或配置问题):

很正常,当一个程序无法运行时,第一时间想到的是最大的一个问题:环境抑或系统出现了这样或那样的问题,人之常情。对这种问题,一般情况下很容易找到解决方案:找到曾经敲过的并且可以正常运行的代码再次运行一次,如果正常运行,则问题已经带到解决;如果该程序也无法正常运行,也不要果断的认为是系统问题,这时要多次运行曾经已经正常运行过的程序,如果都无法运行,则问题显而易见;如果只有一部分可以运行,则问题就复杂了很多(这种情况估计是科学所无法解释的),那接下来要做的就是逐一的排查系统问题了;反之,若这些都能运行,那么就不要再将那不如灯泡大的眼球聚焦于系统问题了。

当然也有那么一种例外,就是第一次所敲的代码无法运行,那解决方案就是拷贝一份别人所敲的并且已经正常运行的代码,粘贴之后检验是否可以运行,如果是,那也就别再纠缠系统了;反之易得。

二. 语法错误:

在Eclipse环境下编写的Java程序如果出现语法错误,很多稍微稍微了解这种软件的人都可以清楚地排查这种错误,下面简单示例:

我们可以看到在上图中左侧出现了红色的x,在staic下面有红色波浪线。这时系统已经将编译过程中的语法错误自己找出,所以留给我们的就是检查staic本身,观察是否出现了拼写或没有定义等错误。如上例,检查后发现是误将static拼成staic,改正后如下图示:

三.缺少主函数:

这种错误相对来说就比较的隐蔽了,至少在排查掉以上所列的两种错误后,我们就开始郁闷了!环境良好,没有语法错误••••••那还会是什么错误的捏?作为一个羽翼尚未出现的小小鸟,我是认为这种错误很是难以想到。其实呢,对于很多无论是白色的还是灰色的羽翼都很长的大鸟来说,这就是菜鸟级的错误:一个程序没了主函数怎么的可以运行捏?然后嘀咕一句:“弱智”,不屑的离开了。很郁闷的扔了俩白眼球后,心里很是不忿的想:谁不都是从菜鸟蜕变出来的啊!cao••••••

其实吧!这还真是一个不可饶恕的错误,你想啊!如果一个正常人想走路,没有手行,没有腿也行,但没了脑袋还行吗?主函数都没,那还搞鬼啊!但我还就是屡次的出现这种错误,想起了湖南人引以为傲的曾国藩的一个典故:屡战屡败与屡败屡战。没了曾爷爷的气魄,但有曾爷爷的教诲,所以还好啦~~~记住不要再忘了主函数啦!

下面结合很多很多很多••••••秒以前所写的一个程序说明一下没写主函数的恶果:

package Learn0212;

/**

* 简单学生类定义

* @author Administrator

*/

public class Student {

//学生属性定义

//学生名字属性

private String name;

//学生学号属性

private int scro=0;

/**

* 设置学生姓名的值

* @param n:要设置为的名字

*/

public void setName(String n){

name=n;

}

/**学生学习的方法*/

public void study(){

scro++;

System.out.println(name+"学习中!");

}

/**学生玩的方法*/

public void play(){

scro--;

System.out.println(name+"正在游戏中");

}

}

看了上面的代码,记得第一次有过迷茫,开始Run As后,弹出这么一个窗口:

看了几遍,还是没搞懂,最后还是不了了之~~~呜呼哉!

上述代码添加主函数程序图及运行图如下图示1和2:

public static void main(String[] args){

//创建一个学生对象

Student st1=new Student();

//调用这个对象的方法

st1.setName("比尔盖茨");

st1.study();

}

图1

图2

四. 编译错误(非语法错误):

这类错误其实在以上几种错误中是最不易被发觉的(个人感觉哦)。这类错误很大程度上是由于不细心或者没有整体概念所致,我个人在编写时,目前出现最多的是后一种错误即没有整体概念。

稍微的跑一下题,整体观其实很重要,它是事物形成后的一个体现,思想上的和物质上的。 一个只想着杀几个敌人的士兵或许只会在沙场的滚滚中淹没,至于位高权重,则完全的是无稽之谈了。

据自己在写代码时碰到对策一些个问题,简述一下可能的一些错误:缺少一些枝干如写主函数时缺了String args[];把public 型写作private型等等。示例如下:

当运行时,意外的发现运行不了,在排查了以上三种错误后,还是运行不了,无奈之下只好逐一的与示例代码核对,竟•••竟•••竟发现少了些东西,补充后图片如下:

public class LoadCard extends JFrame{

public static void main(String args[]){

LoadCard loa=new LoadCard();

loa.Creat();

}

//创建窗体

public void Creat(){

说小不小,说大不大的错误竟如此般的憋屈,煞费苦心啊!

当然,不能运行的错误还有那么多那么多的情况,譬如省去接口实现implements等,这里只是根据个人在日常编译时遇到的一些比较显著地错误加以述说。当然在日后遇到不能运行的时候,还会加以总结并汲取自己某些不足。

那谁谁谁是荀子吧,这样说来着:“君子性非异也,善假于物也!”,但愿我以后也能善假于物吧!其实这是必然的,大鸟啊,大鸟!

java 运行不出来的原因_小议Java程序不能运行的几种原因相关推荐

  1. 电脑运行python后很卡_造成python程序员运行缓慢的原因有哪些

    如果大家有研究过python编程开发语言的话会发现,在一些特殊场景环境下,python程序运行是比较慢的,下面我们就一起来了解一下,引起这个问题的原因都有哪些. 是全局解释器锁的原因吗? 现在很多计算 ...

  2. java 进程假死原因_分析java进程假死状况

    1 引言 1.1 编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照. 1.2编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况.经过一段时间的观察最近 ...

  3. java中appletviewer是什么意思_自动生成供AppletViewer运行Java Applet的HTML文件

    这几天开始自学Java,搭建Eclipse作为开发环境,发现实在太智能了,貌似对学习无益.于是搜了下,另外搭建了EditPlus上的简易Java开发环境,确实比较适合学习,不足之处是没法配置比较方便的 ...

  4. java制作一个简单的画板_【Java】Thymeleaf一个简单示例

    Thymeleaf简单介绍 Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎 Spring官方支持的服务的渲染模板中,并不包含jsp.而是Thymeleaf和Freemar ...

  5. java 必须try catch的异常_【java基础之异常】死了都要try,不淋漓尽致地catch我不痛快!...

    @ 1.异常 1.1 异常概念 异常 :简单说就是不正常运行,最终导致JVM的非正常停止. 在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象.Java处 ...

  6. java中随机数怎么定义类_浅析Java中的随机数类

    Java中的随机数是否可以重复?Java中产生的随机数能否可以用来产生数据库主键?带着这个问题,我们做了一系列测试. 1.测试一: 使用不带参数的Random()构造函数 * @author Carl ...

  7. java web开源项目源码_适合Java新手的开源项目集合——在 GitHub 学编程

    作者:HelloGitHub-老荀 当今互联网份额最大的编程语言是哪一个?是 Java!这两年一直有听说 Java 要不行了.在走下坡路了.没错,Java 的确在走下坡路,未来的事情的确不好说,但是瘦 ...

  8. java每个阶段的学习时间_每个Java学习者都会犯的10个最常见的1个错误

    java每个阶段的学习时间 据说:"您的朋友会吞下您的错误,您的敌人会将它们呈现在盘子上". 我绝对不是你的敌人,但我想向您介绍一些针对每个Java初学者的错误,我将在此博客&qu ...

  9. java gc回收堆还是栈_浅析JAVA的垃圾回收机制(GC)

    1.什么是垃圾回收? 垃圾回收(Garbage Collection)是Java虚拟机(JVM)垃圾回收器提供的一种用于在空闲时间不定时回收无任何对象引用的对象占据的内存空间的一种机制. 注意:垃圾回 ...

  10. java utf8 简繁转换 类库_在Java中进行中文繁体简体转换,基于OpenCC(Open Chinese Convert)方案...

    一.OpenCC介绍 OpenCC (Open Chinese Convert,开放中文转换) 是一个用于中文简繁转换的开源项目,支持词汇级别的转换.异体字转换和地区习惯用词转换(中国大陆.台湾.香港 ...

最新文章

  1. Leetcode 179. 最大数 解题思路及C++实现
  2. 大规模领域词汇库项目DomainWordsDict:涵盖68个领域、共计916万的词汇库资源开放
  3. 一个非科班大学生的四年,到秋招收获了腾讯和字节的offer
  4. 纳税人基本信息与服务器端基本信息不符,网上报税对浏览器有什么要求吗
  5. linux 自动补全快捷键,day4 Linux下的快捷键和基本命令
  6. MCSE 2012 R2之工作文件夹Word Folders(2)
  7. MongoDb数据库连接操作【详解】
  8. python画球面_matplotlib中的球面坐标图
  9. error obtaining controller instance: failed to create NAT chain
  10. rsyslog搭建远程日志服务器
  11. OpenCV实现图像的裁块与拼接
  12. LL(1)语法分析器
  13. Oracle的基本练习:登陆、查看连接、管理登陆用户、修改进程数
  14. 中国自主操作系统横空出世,压力之下美国两大操作系统宣布合作
  15. Tank Game V0.2
  16. oracle 按某个字段分类汇总,Oracle语句分类汇总
  17. 单片机按键设计的四个方案
  18. 最小环 floyd java_最小环(floyd)
  19. edge浏览器flash插件怎么启用
  20. unity2D横板游戏教程6-敌人AI以及受击动画

热门文章

  1. 【比赛游记】NOI2019打铁记
  2. 网游之古剑太初最新章节
  3. 年关将至,房东不肯退押金,应当如何维权?| 法豸
  4. vant swipe 三图一屏
  5. 利用QRmaker制作二维码
  6. 考研数学公式默写记忆PDF
  7. (predicted == labels).sum().item()作用
  8. 当读/写磁盘文件时,read/write是不带缓冲机制的吗?请说明原因。
  9. fi sap 凭证冲销 稅_SAP FI 系列 (019) - 会计凭证的冲销和反记账
  10. 玩转Qt(14)-Qt与Web混合开发