java se step 2

本文详细介绍了Java中的流程控制语句,如switch、while、do-while及for循环,并对比了它们之间的区别。此外还讲解了数组的基本使用方法,包括初始化、获取长度等,并介绍了方法的定义、调用和重载规则。最后,文章还涵盖了面向对象的基本概念,包括类、对象、封装、构造方法等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

abstract: 流程控制语句,数组,function
               面对对象的封装,构造方法,匿名对象,形式参数等等

 

 

基本语法:

 

                 switch语句

                            可以用键盘录入int,String类型,但是Scanner类没有直接提供录入字符char类型的数据
                            为了编码方便,有时可以利用case穿透

 

 

        3)循环控制语句

 

                  while语句:

                            初始化语句;

                            while(条件表达式){

                                        循环体语句;

                                        步长语句;

                                  }

 

                    do-while语句:

                            初始化语句;
                              do{
                              循环体语句;
                              步长语句;
                                  }while(条件表达式) ;

 

                     for语句:

                        基本格式:

                               for(初始化语句;条件表达式;步长语句){

                                        循环体语句;

                                  }

 

                        扩展格式:

                                for(){

                                        for(){

                                             }

                                  }          

                                  //for嵌套,外层循环控制行数,内层循环控制列数

 

  关于while循环与for循环的区别:

 

1)从内存角度考虑:

                     for循环优于while循环,循环语句结束之后,变量就会被Jvm里面GC(垃圾回收器)回收掉释放掉内存,内存空间不会消耗太多!而while循环,是可以访问那个变量,它不会立即被回收掉!


2)从应用场景来考虑:
                     如果明确范围/次数,使用for循环  (优先考虑for循环,再考虑while循环) 如果不知道循环多少次,这个时候使用while循环

 

 

关于while循环与do-while循环语句区别:

 

                         do-while至少循环一次

                         优先for循环,其次while循环,最后才考虑do-while循环

 

 

       

 

        4)跳转控制语序

 

                    break语句:

                             中断,结束语句

                             注意:break只能在循环语句或者switch语句中使用

 

                     continue语句:

                              停止当前循环,立即进入下一次循环

                                注意:continue只能在循环语句中使用

 

 

 

 

数组

 

               格式:
                      数据类型[]数组名称  //常用    
                      数据类型 数组名称[]

 

               数组的初始化:
                    1)动态初始化:指定数组长度,由系统给数组中的元素赋值
                    2)静态初始化:指定数组中的元素的值,由系统给数组指定长度 
                        例如int[] arr =new int[]{1,2,3};简写int[]arr = {1,2,3};
  
              动态初始化:
                    数据类型[] 数组名称 = new 数据类型[指定长度] ;   //推荐
                     int[] arr = new int[2] ;
                    数据类型 数组名称[] = new 数类型[指定长度];  //注意 : 数组定义时不能动静结合

 

               数组有length属性,可以通过  数组名称.length  获得数组长度   
                //String里没有length属性,但可以获得字符串长度,集合中也没有length属性

 

               数组常遇见的异常:
                     ArrayIndexOutOfBoundsException : 数组角标越界异常

 

 

 

 

function(方法)

 

                  格式: 
                            权限修饰符 静态修饰符 返回值   方法名(数据类型1 参数1,数据类型 参数2...){
                             return 结果;
                             }   //返回值类型为void(没有具体返回值时为void)则没有return

 

 

                 调用方法:
                            1)单独调用 : 没有具体结果
                            2)输出调用 : 不好,将数据写死,直接输出的,不能对结果进行一下步的需求
                            3)赋值调用 : 可以针对结果下一步需求操作     

                                  

 

                 关于定义方法的注意事项:
                            1)方法和方法是平级关系,不能再一个方法中再去定义一个方法
                            2)形式参数中,参数类型是一定要有的,否则报错 
                            3)调用方法的时候,不需要带数据类型
                            4)书写方法中两个明确
                                     ①明确返回值类型
                                     ②明确参数类型以及参数个数

 

 

                  关于方法重载 :
                             定义多个方法时候,方法名相同,参数列表不同,并且与返回值无关!
                             参数列表不同:
                                     1)参数个数不同
                                     2)参数类型不同

 

 

 

 

 

 

面向对象

 

                    类是用来描述现实世界中的事物!
                    类是对象的抽象,对象是类的具体化,实例是类的另一个名称

 

 

普通类 


                     1)//创建一个类
                          class 类名{

                     2) 定成员变量

                     3) 成员方法(){}  
                            public class 测试类名{

                     4) 创建一个类对象
                                        类名 对象名 = new 类名();

                     5) 给成员变量赋值
                                        对象名.成员变量= ....

                     6) 调用成员方法
                                        对象名.成员方法名();   

 

                      *成员变量与局部变量区别 : 书写位置、内存位置、生命周期和初始化不同   
                      *成员变量名称和局部变量名称一致的情况下,采用就近原则    

 

 

 

 

private封装

                        封装概述:
                                    是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

 


                        标准类写法:
                                    成员变量全部私有化
                                    提供公共的访问的成员方法
                                    /*与普通类不同的是,封装需要在成员变量或者公共方法前设置权限private
                                        然后添加公共成员方法将其包含进去,最后再给公共成员变量赋值或者调
                                        用公共成员方法*/    

 

                        封装好处:
                                   1) 隐藏实现细节,提供公共的访问方式;
                                   2) 提高了代码的复用性;
                                   3) 提高安全性。

 

 

 

构造方法


                          特点:
                                    1)方法名和类名相同
                                    2)没有返回值类型,连void都没有
                                    3)没有具体的返回值    

 

                           作用 : 给对象进行初始化

 

                            注意 : 如果写标准类时,没提供有(无)参构造方法,则系统默认提供无参构造方法
                                      构造方法亦可重载

 

                           标准类写法 : 
                                       1)成员变量私有
                                        2)提供有(无)参构造方法  //可以在有参构造方法里通过this关键字给成员变量赋值
                                         3)提供getXxx/setXxx方法

 

 

             

形式参数


                            1)形式参数如果是基本数据类型: 形式参数的改变,对实际参数没有影响
                            2)形式参数是应用数据类型的话:形式参的改变,会直接影响实际参数

 

             

 

 

匿名对象


                            格式:
                                    new类名();
                            好处:
                                    1)一般,调用一次即可,不适合调用多次
                                     2)调用完毕之后,会立即从内存释放掉,及时被GC垃圾回收器回收掉!
                                      3)匿名对象它可以作为参数进行传递
                             应用 : 
                                        接口中,抽象类中应用较多

                                        

 

            

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值