二 Java 流程控制语句 数组 类对象

本文详细介绍了Java的流程控制语句,包括If...else、switch和for的用法,强调了switch的匹配规则。接着讲解了数组的操作,如Arrays.toString()方法和foreach循环,以及二维数组的使用。此外,还探讨了方法的重载和类与对象的概念,包括构造方法、静态成员和静态初始化块的作用。
摘要由CSDN通过智能技术生成

一 流程控制语句

If...else

switch

当需要对选项进行等值判断时,用switch语句更加简洁明了

当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;如果没有匹配的 case 语句则执行 default 块的代码。

  1. switch 后面小括号中表达式的值必须是整型或字符型
  2.  case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2
  3. case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束 
  4. 可以把功能相同的 case 语句合并起来,如

  5. default 块可以出现在任意位置,也可以省略

for

  1. for 关键字后面括号中的三个表达式必须用 “;” 隔开,三个表达式都可以省略,但 “;” 不能省略。
  2. for 循环变量初始化和循环变量变化部分,可以是使用 “,” 同时初始化或改变多个循环变量的值,如:

二 数组

操作数组的步骤:

  1. 声明数组 int[] a; int a[];
  2. 分配空间 a=new int[10];
  3. 赋值

int[] a=new int[5];

int[] a={1,2,3}; 等价于 int[] a= new int[]{1,2,3};

Arrays类

Arrays.toString(数组名)

将数组转换为字符串,该方法按顺序把多个数组元素连接在一起,多个元素之间使用逗号和空格隔开

foreach

foreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组、集合时, foreach 更简单便捷。

二维数组

一种“特殊”的一维数组,它的每个数组空间中保存的是一个一维数组。

方法

  1. 方法的访问修饰符可以忽略
  2. 如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值
  3.  方法名一般采用第一个单词首字母小写,其它单词首字母大写的形式
  4.  方法的返回值最多只能有一个,不能返回多个值
  5. 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型

方法的重载

如果同一个类中包含了两个或两个以上方法名相同,方法参数的个数、顺序或类型不同的方法,则称为方法的重载。

判断方法重载的依据:

1、 必须是在同一个类中

2、 方法名相同

3、 方法参数的个数、顺序或类型不同

4、 与方法的修饰符或返回值没有关系

三 类和对象

类是以代码形式保存在文件当中,当把文件的信息放到内存当中,此时这些信息的集合就称作对象,这个过程就叫实例化new Telphone()

成员变量和局部变量

成员变量:在类中定义,用来描述对象将要有什么。可以被本类的所有方法使用,也可以被其他和当前类有关系的类的方法使用。

局部变量:在类的方法中定义,在方法中临时保存数据。

  • Java会给成员变量一个初始值,但不会给局部变量赋予初始值。
  • 两类变量同名时,局部变量具有更高的优先级。(就近原则)

构造方法

  1. new+构造方法:创建一个新的对象
  2. 构造方法是定义在Java类中的一个用来初始化对象的方法
  3. 构造方法与类同名,没有返回值
  4. 如果没有指定一个无参的构造方法,系统会帮我们自动生成一个无参的构造方法
  5. 当有指定构造方法,无论是有参、无参的构造方法,都不会自动添加无参的构造方法

static

静态成员

  • Java中被static修饰的成员称为静态成员/类成员
  • 它属于整个类所有,而不是某个对象所有,即被该类的所有对象共享
  • 可以用类名直接访问,也可以用对象名访问
  • static可以修饰变量、方法和代码块
  • 静态成员属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收

静态方法

  • Java中被static修饰的方法称为静态方法/类方法
  • 静态方法可以直接调用同类中的静态成员,但不能调用非静态成员
  • 在普通成员方法中,可以直接访问同类的静态、非静态变量
  • 静态方法中不能直接调用非静态方法

静态初始化块

可以通过初始化块进行数据赋值。

public class Telphone {
	float mem;
	{
		mem=2;
	}
  • 在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。
  • 静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量
  • 程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值