Java day18

*## 方法
统计:
int count = 0;

if(count % 8 == 0){
count++;
system.out.ptintln(…);
}

                 第二种方法:
                  if(count == 8){
                   system.out.println(..);
                   count =0;  //归零
                  }
      
     方法:
             方法的基础语法
                     Java 方法
                                   某个功能代码只需要写一遍,要使用这个功能,只需要给这个功能	传递具体的数据	
                                   这个功能完成之后返回一个最终的结果
                                   这样就能重复利用这一代码	
                                   以上简称为:方法
                                   使用这一方法我们成为 : 调用  invoke
                                    
                                   方法的本质:
                                                        方法就是一段代码片段,完成某一特定的功能,并且可以重复使用
                                                        对应的英语单词: Method	
                                                        方法在C语言中叫  函数/功能
                                                        	
                                                        #注意:
                                                        方法定义在类体当中
                                                        一个类中由若干个方法和变量组成
                                                        方法体中不能再定义方法
              
              方法2.0:
                            方法怎么定义?语法结构
                                   
                                   【修饰符列表】 返回值类型 方法名(形式参数列表){
                                                方法体;(必须有大括号括起来)
                                      }
                                      语法结构的解释说明:
                                             
                                             修饰符列表: --可选项,不是必须的
                                                                   --统一写成:public static
                                                                   --修饰符列表中有  static关键字  的话,怎么调用这个方法?
                                                                     类名.方法名(实际参数列表); . 表示的意思,表示什么什么 的
                                              
                                              返回值类型:
                                                                  --一个方法是可以完成某个特定功能的,这个功能结束之后大多数都是都是
                                                                     需要返回最终的执行结果,执行结果可能最终是一个具体的数据(分类型)	
                                                                     包括基本数据类型和引用数据类型
                                                                      
                                                                 --并不是所有的方法都有返回值(类型)	
                                                                   当一个方法执行结束之后不会 “返回任何数据类型”的话,返回值位置必须编写
                                                                   :void 来代替
                                                                      
                                                                  --返回值类型可以是:
                                                                    int、void、long、float、double、char、string等等
                                                                如果返回值类型不是void,那么这个方法执行结束之后必须返回一个具体的数据
                                                                  --怎么返回值?格式:
                                                                      return 字面值;
                                                                      要求:返回的值 必须和返回值类型保持一致	
                                                                      返回值类型为void时,方法体不能有return语句
                                                                      
                                                                      如果要强加return的话,可以在后面写 return;不写字面值
                                                                      但是
                                                                      带有return关键字的语句执行,return语句所在的方法结束
                                                          
                                                     方法名:
                                                                 只要是合法的标识符就行
                                                                 方法名最好见名知意
                                                                 方法名最好是动词
                                                                 变量名,方法名首字母要求小写,后每个单词的首字母大写
                                                                 类名、接口名首字母大写,以后每个单词首字母大写
                                                      
                                                   形式参数列表:
                                                       形参是局部变量,有数据类型
                                                       形参可以多个,之间用逗号 , 隔开
                                                       形参中起决定性作用的是数据类型
                                                       例如:
                                                             //方法的定义
                                                              public static int sum(int 变量名,int b ){
                                                              //(int a,int b)是形参列表
                                                              }
                                                             //方法的调用
                                                             sum("10","20");//实参列表
                                                             形参列表和实参列表关系:  必须满足数量相同、类型对应相同,才能可以进行
                                                             类型转换
                                                             如:
                                                                      类名.方法名((转换符)数据类型,局部变量)
                                      
                                      方法如何调用:
                                                    语法规则:【要有static】
                                                    类名.方法名(实参列表)
                                                    方法的调用不一定要在  main中,可以在其他方法当中
                                                    只要程序执行到位,都可以去调用其他方法
                                                     
                                                    方法的修饰符列表当中有static关键字,完整的方式是:类名.方法名(形参列表)
                                                    有时候,类名.  可以省略不写
                                                    省略不写的几种情况:
                                                            * 方法在同一类体当中调用,类名可以直接不写,方法名要写
                                                            * 在一个类体调用不同一个类体的方法是写上:类名.方法名(形参);
                                                            * 对于当前程序来说,main方法最先调用,最后一个结束
                                      
                                      方法返回值不是void的时候
                                              要求方法必须保证百分百的执行 “return  字面值”,这样的语句完成 值的返回
                                              	
                                              一个方法有返回值的时候 ,当我们调用这个方法的时候,	方法返回了一个值,
                                              对于调用者来说,这个返回值可以选择接收,也可以选择不接受	,
                                              但是但部分情况下是选择接收的
                                               
                                              还可以用system.out.println()输出		
                                               
                                              深入return语句:
                                                     带有return关键字的Java语句只要执行,所在的方法结束	
                                                     在同一个作用域当中,return语句下面不能编写任何代码
                                              
                                              在返回值类为void的方法中 使用“return”语句    
                                                      return语句出现在void语句中主要是为了终止方法的执行	
                                                       
                                                      break和return的区别:
                                                       
                                                                                
                                                                                   return作用于方法的终止
                                                                                   break作用于循环语句的终止
                                                                                   
        	     方法在执行过程中,在jvm中的内存是如何分配的呢?内存是如何变化的?
                            * 方法只定义,不调用,是不会执行,并且在jvm中也不会给该方法分配“运算所属”的内存空间
                              只调用的时候才有内存空间(方法只定义,不调用,是没有内存空间的)
                            * 在jvm中内存 	划分上有三块主要的内存空间:
                                     --方法区(内存)存储代码片段
                                     --堆区(内存)对象
                                     --栈区(内存)
                             * 关于栈数据结构:
                                     -- 栈:stack,是一种数据结构(数据结构就是数据存储的一种形态)
                                     -- 常见的数据结构:
                                               * 数组
                                               * 队列
                                               * 二叉树
                                               * 链表
                                               * 栈:
                                                       --栈顶元素
                                                                - 栈帧(永远指向栈顶元素)
                                                                - 栈顶元素处于活跃状态,其他元素处于静止状态
                                                                - 术语:
                                                                           --入栈push
                                                                           --出栈pop
                                                                - 栈数据结构存储数据的特点是:
                                                                                                                     -- 先进后出
                                                                                                                     -- 后进先出
                                                       --栈底元素
                                               * 哈希表/散列表
                                               ......
                      方法代码片段存储在哪里?	方法执行的时候执行过程的内存在那里分配?
                              * 方法代码片段属于.class字节码文件的一部分,“字节码文件”在类加载的时候,
                                将其放在方法区中,所以方法区最先有数据和内存,存放可代码片段。
                                
                              * 代码片段虽然在方法区中只有一份,但是可以被重复调用。 
                                每一调用这个方法,需要给该方法分配独立的活动场所,在栈内存中分配空间
                                栈内存中分配方法运行所属的内存空间。
                              
                              * 方法在调用的瞬间,会给该方法分配内存空间
                                 在栈中会发生入栈(分配内存)动作,方法执行结束之后,给该方法分配的内存空间会全部释放,
                                 此时发生出栈动作。(先有内存空间,然后再进行入栈,出栈是先释放内存空间)
                                 
                              * 局部变量运行阶段内存栈中分配存储,在方法体中声明
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值