导航:首页 > 源码编译 > java编译混淆出错

java编译混淆出错

发布时间:2022-07-02 03:51:39

java语言中什么叫做编译错误

就是你用javac命令将源代码(.java)文件翻译成字节码(.class)文件时产生的错误。
比如,变量名不符合规定,变量没定义,关键字拼写错误等等。。。
java的编译器(javac)会根据java语法规定做一些检查,不符合规定的就不通过编译。

编译错误,是相对于运行时错误而言的。
运行时错误,是你用java命令运行时会出现的错误,一般会抛出异常。

② 编译java文件出错

说明当前的java文件中有错误的代码,导致无法编译。

解释:java的编译过程中,java代码必须是完全正确的,不能有红色”ד错误,否则是无法正常编译的。

备注:可以将鼠标放到红叉上,看看具体的错误,之后针对问题进行解决即可,不报错之后再进行编译。

③ 请教:怎么看懂并处理java编译错误

告诉你一个常见且最简单的新手解决方案,就是 从上而下的看打出的日志,找到第一个 是你自己所创建的文件路径 比如 com.you.test 的类报
的错,点击后面的连接就可以定位到错误发生的位置,在根据开头报的错误。加入报 null point空指针异常,则是你定位错误的位置发生了空指针。那
你给它初始化就解决了。 不知道你明白了不

④ java 编译时出错。哪位高手可否告知原因

代码最好贴出来。
上面一个错误是因为你保存的文件名是String.java,而你的类StringDemo确实public的,如果这个文件里的主方法在String类中,就把StringDemo的前的public修饰符去掉。如果主方法在StringDemo中,就改文件名。总之文件名要和公有类名一致,一个文件中只能有一个公有类。

下面一个错误是因为你自己又定义了一个String类,这样的话你StaticDemo中主函数使用的是当前包中的String类。改成public static void main(System.String args[])可以解决。但是最好不要使用系统已经定义过的类名

⑤ Java编译出错 这是什么意思

第一你的类名没有错,因为除了ClassNotFoundException外还有其他main方法内的异常
第二,你有可能是没有在CMD形式下运行时倒外部包
一些程序需要倒非JDK内包的jar,在CMD执行时,靠简单的javac name.java是不行的
强烈建议使用专业的编译IDE,CMD不智能,在真正的开发中,只适合编译无main类,及打jar等

⑥ java 程序编译出错

public class Person{

private String name;
private String idNo;
private boolean sex;
private Address adr;

public Person(){}

public Person(String newName,String newIdNo,boolean newSex,Address newAdr){
name=newName;
idNo=newIdNo;
sex=newSex;
adr=newAdr;
}

public Person(String newName,String newIdNo,boolean newSex,String newState,String newCity,String newStreet,String newNo){
name=newName;
idNo=newIdNo;
sex=newSex;
adr=new Address(newState,newCity,newStreet,newNo);
}

private String getName(){
return name;
}

private String getIdNo(){
return idNo;
}
private boolean getSex(){
return sex;
}
private Address getAdr(){
return adr;
}
private void setName(String newName){
name=newName;
}
private void setIdNo(String newIdNo){
idNo=newIdNo;
}
private void setSex(boolean newSex){
sex=newSex;
}
private void setAdr(Address newAdr){
adr=newAdr;
}
public String toString(){
return name+";"+idNo+";"+sex+":";
}

public static void main(String[] args) {
Address adr1=new Address("浙江","杭州","学林街","985");
Person p1=new Person("张三","200920102001",true,adr1);
Address adr2=new Address("浙江","杭州","学林街","121");
Person p2=new Person("李四","200920102002",true,adr2);
System.out.println ("张三信息:姓名:"+p1.getName()+";学号:"+p1.getIdNo()+";性别:"+p1.getSex());
System.out.println ("李四信息:姓名:"+p2.getName()+";学号:"+p2.getIdNo()+";性别:"+p2.getSex());
System.out.println (p1.toString()+p1.adr.toString());
}
}

class Address{

private String newState;
private String newCity;
private String newStreet;
private String newNo;

public Address(){}

public Address(String newState,String newCity,String newStreet,String newNo){
this.newState = newState;
this.newCity = newCity;
this.newStreet = newStreet;
this.newNo = newNo;
}
}

⑦ 我使用CLASS反汇编生成的JAVA文件重新进行编译生成JAVA文件提示出错是为什么呢

并不是所有的class都能反汇编成java文件的,尤其是那些经过obfuscation(代码混淆)的class文件,混淆器故意生成很难或者根本不可能被反汇编的程序。比如class文件中可以用java关键词作名字的变量,反汇编出来的当然就不行了,这只是混淆技术之一,有些混淆技术相当难破。

另外,反汇编出来的程序质量跟反汇编程序也很有关系,jd-gui不错,但也不是通吃的。

⑧ 在用java编写的时候,常出错的地方在哪里如何解决呢

1. java.lang.nullpointerexception
这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中出现空指针,很多情况下是一些刚开始学习编程的朋友常犯的错误,即把数组的初始化和数组元素的初始化混淆起来了。数组的初始化是对数组分配需要的空间,而初始化后的数组,其中的元素并没有实例化,依然是空的,所以还需要对每个元素都进行初始化(如果要调用的话)

2. java.lang.classnotfoundexception
这个异常是很多原本在jb等开发环境中开发的程序员,把jb下的程序包放在wtk下编译经常出现的问题,异常的解释是"指定的类不存在",这里主要考虑一下类的名称和路径是否正确即可,如果是在jb下做的程序包,一般都是默认加上package的,所以转到wtk下后要注意把package的路径加上。

3. java.lang.arithmeticexception
这个异常的解释是"数学运算异常",比如程序中出现了除以零这样的运算就会出这样的异常,对这种异常,大家就要好好检查一下自己程序中涉及到数学运算的地方,公式是不是有不妥了。

4. java.lang.
这个异常相信很多朋友也经常遇到过,异常的解释是"数组下标越界",现在程序中大多都有对数组的操作,因此在调用数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围,一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表示下标)调用就经常出错了,还有一种情况,是程序中定义的数组的长度是通过某些特定方法决定的,不是事先声明的,这个时候,最好先查看一下数组的length,以免出现这个异常。

5. java.lang.illegalargumentexception
这个异常的解释是"方法的参数错误",很多j2me的类库中的方法在一些情况下都会引发这样的错误,比如音量调节方法中的音量参数如果写成负数就会出现这个异常,再比如g.setcolor(int red,int green,int blue)这个方法中的三个值,如果有超过255的也会出现这个异常,因此一旦发现这个异常,我们要做的,就是赶紧去检查一下方法调用中的参数传递是不是出现了错误。

6. java.lang.illegalaccessexception
这个异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。对程序中用了package的情况下要注意这个异常。

⑨ 编译JAVA文件出现这种情况错误有哪些原因

你看你那个HelloWord文件后缀名是txt,还不是个java文件,你在电脑里找到这个文件把后缀.txt去掉,变成HelloWord.java文件,再编译就没问题了

⑩ java编译出错

由于JDK是国际版的,在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe首先获得我们操作系统默认采用的编码格式。

在编译java程序时,若我们不指定源程序文件的编码格式

对我们来说,我们最终获得的.class文件是内容以UNICODE编码格式保存的类文件,它内部包含我们源程序中的中文字符串,只不过此时它己经由file.encoding格式转化为UNICODE格式了。当我们不加设置就编译时,相当于使用了参数:javac -encoding gbk xx.java,当然就会出现不兼容的情况。

解决方法

1.使用-encoding 指定字符集

javac -encoding utf-8 xx.java

2.把源文件编码修改成ASCII

阅读全文

与java编译混淆出错相关的资料

热点内容
林园炒股指标源码 浏览:466
pdf页面间距 浏览:64
vi命令实训操作 浏览:971
传说古代洪水肆虐谁奉帝尧的命令 浏览:691
如何卸载爱思app 浏览:41
安卓app如何不显示图标 浏览:524
桌面云服务器组建配置 浏览:923
济宁织梦源码怎么跳转到qq 浏览:291
西安java培训 浏览:298
苹果用户app如何退款 浏览:889
解压方式就是喝酒 浏览:397
麦块怎么添加到游戏服务器 浏览:962
喷油螺杆制冷压缩机 浏览:582
python员工信息登记表 浏览:377
高中美术pdf 浏览:162
java实现排列 浏览:513
javavector的用法 浏览:982
osi实现加密的三层 浏览:234
大众宝来原厂中控如何安装app 浏览:916
linux内核根文件系统 浏览:243