A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© FCRandR 中级黑马   /  2015-10-22 23:08  /  580 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

static函数只能调用static成员。所以main要使用函数必须是static的。但是为什么,class main里面可以使用其他class里非静态的方法呢?

6 个回复

倒序浏览
孤单背影 来自手机 中级黑马 2015-10-23 00:49:07
沙发
其他的类必须是被new了以后变成对象才能调的啊,你调别的类里的静态方法不也得通过类名调用吗。
回复 使用道具 举报
不是main函数在使用,因为main是jvm的入口,在mian方法通过创建对象调用非静态方法,是对象在调用
回复 使用道具 举报
1.main函数之所以定义为static,是因为main方法是运行一个应用时的入口点,main函数的苦丁写法,可以被jvm识别。(static方法随着类的加载而加载,不需要创建对象就可以调用)
2.静态方法只能访问静态成员,指的是可以直接访问静态的的属性或方法,不能直接调用其他非静态域或方法,因为非static域或方法的调用必须与特定对象相关联,通过创建对象的方式可以调用。
回复 使用道具 举报
你是new了对象再调用的。你new了对象,方法就存在了
回复 使用道具 举报
大家理解的很透啊。记下了
回复 使用道具 举报
hoshan1 中级黑马 2015-10-27 18:43:18
7#
上面写的很详细了,谢谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马