成都网站建设设计

将想法与焦点和您一起共享

java不安全代码 java安全编码规范

JAVA程序 编译提示“未经检查或不安全操作”

这是个警告信息,不是编译错误,运行是没有问题的,只是jdk api的更新,你看的是老书吧,对于类似Vector ArrayList之类的集合而言,新的api要求指明其存储元素的类型,用VectorInteger vector=new VectorInteger()来代替你的Vector vector=new Vector(); 就可以了!

公司主营业务:成都做网站、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出安达免费做网站回馈大家。

另外,javc ABC.java与你的类不对应,改用javac Pailie.java,这个楼上说的没有问题。

Java警告使用了不安全的代码云云 recompile with -Xlint:unchecked for details还请指导,谢谢

recompile with -Xlint:unchecked for details 重新用参数 -Xlint编译一下,就能看到详细的信息。可能使用过时的方法了吧

Java编 了个小程序。。提示未经检查或不安全的操作

//是泛型的问题,加点东西就好了。

public class SortedArray {

public static int indexOf(int[] table, int value) {

for (int i = 0; i table.length; i++) {

if (table[i] == value)

return i;

}

return -1;

}

//泛型是这样用的 Comparable中的类型必须是这个尖括号中的类型

public static int indexOf(ComparableString[] table,

ComparableString cobj) {

if (table != null cobj != null) {

for (int i = 0; i table.length

cobj.compareTo((String) table[i]) = 0; i++) {

System.out.println(table[i] + "?");

if (cobj.compareTo((String) table[i]) == 0)

return i;

}

}

return -1;

}

public static void main(String[] args) {

String[] keywords = { "abstact", "boolean", "break", "byte", "case",

"catch", "char", "class", "continue", "defuault", "do",

"double", "else", "extends", "false", "final", "finally",

"float", "for", "if", "implements", "import", "instanceof",

"int", "interace", "long", "native", "new", "null", "package",

"private", "protected", "public", "return", "short", "static",

"super", "switch", "synchronized", "this", "throw", "throws",

"transient", "true", "try", "void", "volatile", "while" };

if (args.length 0)

for (int i = 0; i args.length; i++) {

int find = SortedArray.indexOf(keywords, args[i]);

System.out

.println(args[i] + ((find != -1) ? "" : "不") + "是关键字");

}

else

for (int i = 0; i args.length; i++) {

String key = "const";

int find = SortedArray.indexOf(keywords, key);

System.out

.println(args[i] + ((find != -1) ? "" : "不") + "是关键字");

}

}

}

java编译说使用了未经检查或者不安全的操作

首先:java中未经检查或者不安全的操作并不是错误!!!完全可以忽视,不像看到这个的话,在class定义的前面一行加上@SuppressWarnings("unchecked")

然后把,我猜是你的ArrayList这里出的问题,ArrayList相当于一个容器,jdk1.5以后再定义容器的时候要加上泛型,如果你装的是String的话,可以改成ArrayListString array = new ArrayListString();

当然了,int型的就对应改为ArrayListInteger array = new ArrayListInteger();

补充:

你用的是ArrayListInteger array = new ArrayListInteger();的话就应该add单个的Integer元素,但是你add的是一个int数组,所以应该是ArrayListint[] array = new ArrayListint[]();这是相对应的。

另外,其他几楼的说数组没初始化完全不对,数组本来就可以定义的时候赋值。


文章名称:java不安全代码 java安全编码规范
分享链接:http://chengdu.cdxwcx.cn/article/doipeog.html