java学习
对象
什么是对象
万物皆对象,一切事物都可以看做一个对象。对象不是指女朋友,而是可以把女朋友看做是一个对象。比如给你几个需求,性别女,身高一米六五,体重九十斤,性格温柔善良,你通过这些需求创建一个女朋友,那么这个女朋友就是对象,那么其中的性别、身高、体重、性格,我们可以称这些为这个对象的属性。
创建对象
Person xiaoMing=new Person();//创建对象,找到这类人中的一个,他是小明
这行代码声明了一个对象,包括对象名称和对象类型,使用关键字new来创建一个对象。
类
什么是类
猫、狗、狼、兔子这些我们可以统称为动物。这个动物,就可以是一个类,类是一个模板,它描述一类对象的行为和状态。
字段
什么是字段
字段( field )本质上就是一个 [变量] ,是属于类中的一个成员( member ),因此也称作 【成员变量】
访问字段
System.out.println("小明的身高"+xiaoMing.age);
通过对象+.+字段名称就能得到字段的值
方法
1. 什么是方法
方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
注意:
- 方法必须先创建才可以使用,该过程成为方法定义
- 方法创建后并不是直接可以运行的,需要手动使用后,才执行,该过程成为方法调用
2. 方法的结构
修饰符 返回值类型 方法名(参数类型 参数名){
…
方法体
…
return 返回值;
}
public class shiyan2 {
//程序的主方法
public static void main(String[] args) {
//println()是一个方法。System 是系统类,out 是标准输出对象
System.out.println(1);
int[] arr=new int[]{1,2,3};
//arr.length 调用了数组的length方法
System.out.println(arr.length);
}
}
3. 主方法
它是类的入口,定义了程序从何处开始;主方法提供对程序流向的控制,java编程器通过主方法来执行程序
public static void main(String[] args) {
}
4. 方法的定义和调用
方法定义
- 格式:
pulic static void 方法名(){
//方法体
}
- 范例:
public static void isEvenNunber{
//方法体
}
方法调用
- 格式:方法名();
- 范例:isEvenNumber();
注意:方法必须先定义后调用,否则程序将报错
带参数的方法的定义和调用
定义
格式: public static void 方法名 ( 参数 ) { … … }
格式(单个参数): public static void 方法名 ( 数据类型 变量名 ) { … … }
范例(单个参数): public static void isEvenNumber( int number) { … … }
格式(多个参数): public static void 方法名 ( 数据类型 变量名1 ,数据类型 变量名2 ,…… ) { … … }
范例(多个参数): public static void getMax( int number1 , int number2 ) { … … }
注意:
- 方法定义时,参数中的数据类型与变量名都不能缺少,缺少任意一个程序将报错
- 方法定义时,多个参数之间使用逗号( ,)分隔
调用
格式: 方法名 ( 参数 ) ;
格式(单个参数): 方法名 ( 变量名/常量值 ) ;
范例(单个参数): isEvenNumber( 5 ) ;
格式(多个参数): 方法名 ( 变量名1/常量值1 ,变量名2/常量值2 ) ;
范例(多个参数): getMax ( 5,6 ) ;
注意:方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,否则程序将报错
形参和实参
形参的改变不影响实参。
如果传进去的是地址,当地址被重新分配地址时,原地址并没有被覆盖,原对象(传参的那个)依然指向原地址
返回值
return 值;
返回值必须与方法定义的数据类型匹配
5. 方法注意事项
- 方法不能被嵌套
- void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据
6. 方法重载
方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载
- 多个方法在同一个类中
- 多个方法具有相同的方法名
- 多个方法的参数不相同,类型不同或者数量不同
特点:
- 重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
- 重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载
例子: