文章目录
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201024085939189.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Rla3UxMDE4,size_16,color_FFFFFF,t_70#pic_center)
三、面向对象:
3.1——3.2基础知识:
行为——方法,也叫函数:在命名时注意使用驼峰命名法。
3.3类成员之一:属性
属性——类的成员变量:可以先声明,不用初始化,有默认值;String的默认值是null;int的默认值是0。
成员变量与局部变量:
1.实例变量:就是在类实例化成对象之后才能使用的。
2.类变量:public static // 静态的,这样的变量不需要实例化成对象就可以直接使用。通过 类名.属性 直接调用。
3.形参:方法中的参数
4.方法局部变量:就是方法内部定义的变量。
5.代码块局部变量:
成员变量与局部变量的区别:
1.方法内的变量只能在它所属的方法内使用。
2.方法内的变量必须初始化。
3.4类成员之二:方法
注意:方法内定义的变量必须要进行初始化,类内定义的变量可以不用进行初始化,会有默认值。
3.5关于对象:
创建,使用:
对象产生:
匿名对象:
提示:
3.6方法(续):
方法的调用:
注意:
1.方法中不能在定义其他方法,只能调用方法。
2.同一个类中,所有的方法可以直接相互调用,不用new去实例化对象去调用。
方法的重载:
重载:多个同名方法如果想在同一个类中共存,那么他们的参数个数或者参数的数据类型一定要不一样(注意:参数名设置不同无效)。这样的同名方法就叫做重载。参数顺序不同也是重载(对应位置上的参数类型不同)!
补充:重载是在同一个类中,有多个方法名相同,参数列表不同(参数个数不同,参数类型不同),与方法的返回值无关,与权限修饰符无关!
方法的可变个数的形参:
应用场景:不知道给方法传递多少参数。需要设计可变参数。
1.构架数组方式:(String[] args);如果没有传入参数,那么要传入null或者空数组。
2.Java特有的方式:(String… args);如果没有传入参数,可以什么都不填。
3.如果一个方法有多个形参,那么可变的形参(…这种参数)一定要放在所有参数的最后。
4.两种方法使用方法相同。
public void printInfo(String... args) {
for(int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
方法的参数传递:
Java中的方法的参数传递方式只有一种:值传递。
基本数据类型,值是保存在栈中;引用对象,值保存在堆中,栈中存的是对象在堆中的地址。
3.7面向对象特征之一:封装和隐藏
封装和隐藏:
四种访问权限修饰符:
在同一个Java文件中可以写多个class,但是只有一个public的,其他的只能是缺省的。
3.8类的成员之三:构造器
构造器:
new对象实际上就是调用类的构造方法。
构造器重载:
构造器也是一种方法,既然是方法,就可以重载。
意义:方便调用方可以灵活的创建出不同需要的对象;相当于提供了多个初始化new对象的模板。
3.9几个关键字:
package,import:
如果是使用同一个包下的类,import可以省。
this: