第一种:package com.imooc;public class HelloWorld{ public static void main(String[] args){/* * 通过定义无参带返回值的方法来实现,返回值为最大年龄 * 方法中将数组学生年龄保存在数组ages中,数组元素依次为18,23,21,19,25,29,17 * */ System.out.println("最大年龄为:"+maxAge()); } static int maxAge(){ int[] ages={18,23,21,19,25,29,17}; int max=ages[0]; for(int i=0;i<ages.length;i++){ if(ages[i]>max) { max=ages[i]; } } return max; } }第二种:package com.imooc;public class HelloWorld{ public static void main(String[] args){/* * 通过定义无参带返回值的方法来实现,返回值为最大年龄 * 方法中将数组学生年龄保存在数组ages中,数组元素依次为18,23,21,19,25,29,17 * */ HelloWorld hello=new HelloWorld();//创建对象,名为hello System.out.println("最大年龄为:"+hello.maxAge()); } int maxAge(){ int[] ages={18,23,21,19,25,29,17}; int max=ages[0]; for(int i=0;i<ages.length;i++){ if(ages[i]>max) { max=ages[i]; } } return max; } }
5 回答
噼喱啪啦
TA贡献392条经验 获得超170个赞
http://www.imooc.com/code/1843 整个是幕课java入门第二季具体有关整个静态static的讲解.
第一种你说的那个你自己设置的maxAge()叫静态方法,在其他静态方法内可以直接调用,因为那个main主函数,主方法就是静态的,他调用静态的变量或方法都可以直接调用
第二个你说的那个你自己设置的maxAge()叫非静态方法,在其他静态方法内不能直接调用非静态的变量和方法,因为主函数是静态的,所以你要创建一个实例对象,才能调用非静态变量和方法.
学习这个建议你分模块,不要把主函数跟主类区别对待,主函数就是一个静态的方法,而主类也就是你这个public class HelloWorld其实是一个类而已.
qq_天大小霸王
TA贡献4条经验 获得超0个赞
第一种叫静态方法,静态方法调用在本类中不需要实例化即可使用
第二种是普通方法,在本类中想要使用需要实例化才可以被调用 建议你看一下java入门基础 讲的很详细
添加回答
举报
0/150
提交
取消