黑马程序员技术交流社区

标题: 解密main函数和this,static关键字以及用java命令传参 [打印本页]

作者: mrwise1991    时间: 2014-1-12 14:16
标题: 解密main函数和this,static关键字以及用java命令传参
            类内部构造函数之间的相互调用,不同于一般的函数调用,不能用构造函数名,而是直接用this关键字加参数,注意,this后面没有“点函数名”。而且,this语句只能定义在构造函数的第一行;注意,this语句是指调用构造函数,而this关键字是代表当前对象自身,用点来调用当前对象中的属性和方法。假如出现这样的情况:this.Person(name),this.name=name在同一个有参的构造函数中,之所以要放在第一行,是因为初始化的动作要先执行,在执行其他的赋值操作。

          main不是一个关键字,但是是一个特殊的单词,可以被jvm识别;主函数格式是固定的,可以被jvm识别,但是main函数可以重载,但是入口不会变,那就是public static void main(String[] args)



       用static声明的属性是所有对象共享的,改变其中一个对象中该属性的值,会同步到所有的对象中,因此也把用static类型声明的变量称为“类变量”,该变量可以用类名直接访问,而不需要通过创建的对象访问;同理,用static声明的方法也被称为“类方法”,但是要注意:如果在类中声明了一个static类型的属性,则此属性既可以在非static类型的方法中使用,也可以在static类型的方法中使用,但用static类型的属性调用非static类型的属性时则会出现错误。这也是为什么在主函数中只能调用static类型的方法的原因。

         由于java虚拟机需要调用类的main()方法,所以该方法的访问权限是public,又因为java虚拟机在执行main()方法时不必创建对象,所以该方法必须是static的,该方法接收一个String类型的数组参数,该数组中保存执行java命令时传递给所运行的类的参数。向java中传递参数可用如下的命令:java 类名称 参数1 参数2 参数3
作者: jyn    时间: 2014-1-12 14:47
不错,不错,很详细啊
作者: 灰太狼爱平底锅1    时间: 2014-1-13 20:13
支持了。。




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