黑马程序员技术交流社区

标题: 这个程序为什么执行部了.... [打印本页]

作者: 党传才    时间: 2012-4-14 19:01
标题: 这个程序为什么执行部了....
public class array3 {
public static void main(){
String s="I LOVE YOU ";
change.low(s);

change.sub(s);

}
} class change{
public static void low(String s){
String a;
a=s.toLowerCase();
System.out.println(a);

}
public static void sub(String s){
String c;
c=s.substring(2);
System.out.println(c);
}
}


哪儿出错了?
作者: 张一凡    时间: 2012-4-14 19:07
public static void main()这句话的String[] args呢?
把它改为public static void main(String[] args);

作者: chenwei    时间: 2012-4-14 20:17
主函数没写String [] args
public static void main(String[] args){

}
作者: 曾虓    时间: 2012-4-14 20:19
主函数main()方法的参数是一个String对象的数组,即使你程序中不用到args,java编译器也要求你必须写上,因为args要用来存储命令行参数。

代码中可能还有点不严谨的问题,
你代码中使用了内部类,这个完全没有必要。内部类在继承多个类的时候能起到很好的效果,你的代码完全可以不用内部类,直接使用方法就可以了。
把方法尽量申明成private的,这样能提高安全性。

修改后代码如下:
public class array3 {

        public static void main(String[] args) {
                String s = "I LOVE YOU ";
                low(s);
                sub(s);
        }

        private static void low(String s) {
                String a;
                a = s.toLowerCase();
                System.out.println(a);
        }

        private static void sub(String s) {
                String c;
                c = s.substring(2);
                System.out.println(c);
        }
}

希望对你有所帮助。{:soso_e113:}
作者: 马强    时间: 2012-4-14 20:31
String [] args

代表String类型的数组,args可以随便写(但是已经成为大家默认)

主函数也是函数,这里不传值的话, java.lang.NoSuchMethodError: main  错误
作者: 黑马-王建雨    时间: 2012-4-14 22:30
array3   请将首字母大写好吗?
请在Array3中将main函数中声明字符串数组。譬如:String[] args。

希望能解答你的疑惑。一起加油,共同进步。
作者: 欧阳才志    时间: 2012-4-14 22:34
public class()
{
public static void main(String [] args)
{

}
}
这个是程序入口的标准写法,楼主入口没有写好啊,所以执行不了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2