现在的位置: 首页 > 综合 > 正文

java 语法相关

2013年04月08日 ⁄ 综合 ⁄ 共 1373字 ⁄ 字号 评论关闭

1.java中方法的形参名字可以取得和成员变量的名字一样,而你查看他的定义时是显示在方法形参上,如aa中的i,在之前看javacore时,说到java的变量没有C++中复杂,在这个例子中看来,C++中局部变量还是适用于java的形参的。

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="App()">
<mx:Script>
 <![CDATA[
        import mx.controls.Alert;
        private var i:int=0;

        private function App():void{
                      aa(i);
                      i=i++;
                      Alert.show(i.toString());//输出为0
        }

        private function aa(i:int):void{
                      i++;
        }
 ]]>
</mx:Script>
 
</mx:Application>

 

 

2.我把上面的例子改了下,运行时没有输出,因为进入了死循环了,所以一个方法内就再没有什么局部有变量了,方法内同一个变量名只可以定义一次,可以定义的和形参名字一样,但实际上是同一个变量

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="App()">
<mx:Script>
 <![CDATA[
        import mx.controls.Alert;
        private var i:int=0;
        private function App():void{
                                  aa(i);
                                  i=i++;
                                 Alert.show(i.toString());
       }
        private function aa(i:int):void{
                         i=1;       //i为1
   
                        for(;i<10;i++)
                        {         
                               var i:int=0;   //相当于i=0;重新给i付值,而不是再定义一个变量i;而这在as3中是没有语法错误的,不知有用idea写会不会报错
                         }
       }
 ]]>
</mx:Script>
 
</mx:Application>

抱歉!评论已关闭.