2022.6.24
周五
学习内容: 1.1 关于方法:- 方法就是类当中要去实现的具体的某一个功能,比如 学习功能,工作功能,开发功能,测试功能,登录注册功能、查看功能…
- 方法当中会包含很多条语句,这些语句共同去完成一件事情。
- 方法声明
-
声明的位置在类中,不能声明在方法的内部
-
位置在:类中方法外
-
方法关系只能并列关系不能是嵌套关系
- 语法格式:
-
修饰符 返回值类型 方法名称(参数类型 参数名1,参数类型 参数名2,....) { -
// 执行语句
-
...
-
return 返回值;
-
}
-
参数类型---->数据类型---->基本数据类型+引用数据类型
-
返回值类型---->数据类型+void(空) null
-
return ---->返回语句
-
修饰符:
-
static 静态修饰符 如果方法上面有static修饰,说明该方法是一个静态方法,该方法的调用要采用静态的方式
-
那么该方法它是属于类的
-
final 最终修饰符 如果方法上面有final修饰,说明该方法是一个最终的方法,该方法的内容是不允许修改的
-
标识符的命名规范:
-
备注:方法名在一个类当中一般情况下是不能二次定义的。
- 方法调用:
-
如果方法的前面有static修饰,该方法是一个静态方法,静态的方法调用采用静态的方式
-
静态的方式是类名来进行调用
-
语法格式:类名.方法名(参数值);
-
如果是在当前类中进行调用,那么前面的类名可以省略不写
-
如果方法的前面没有static修饰,该方法是一个成员方法(普通方法实例方法),此时不能通过静态的方式来进行调用
-
应该通过对象的方式来进行调用
-
语法格式:
-
对象名.方法名(参数值);
- 创建对象的格式:
-
类名 变量名 = new 类名();如创建Demo04类的对象 Demo04 demo = new Demo04();
- 备注:
-
在静态上下文中不能直接引用非静态信息,如果想要引用,必须通过对象的方式才可以。
-
除了main方法可以调用其他方法,其他方法也可以相互之间调用。
-
在非静态上下文中可以直接引用静态信息,当前也可以引用非静态信息
-
方法内部也可以调用自己本身。----->递归 提供一个出口(边界条件)
在同一个类中出现了同一个方法名,但是参数列表不相同,叫做方法的重载。 大多数情况下,这些方法的功能是相同的。 JAVA的方法重载,就是在类中可以创建多个方法,它们可以有相同的名字, 但必须具有不同的参数,即或者是参数的个数不同,或者是参数的类型不同。 调用方法时通过传递给它们的不同个数和类型的参数,以及传入参数的顺序来 决定具体使用哪个方法。1.3:面向对象
面向对象的三大特性:
-
封装、继承、多态
-
封装:
-
狭义上的封装:
-
对类中的属性(成员变量、全局变量、实例变量)进行私有化
-
广义上的封装:
-
对实现细节进行隐藏,对外只需要暴露一个名字
-
类:
-
对某一类有相同特征的事物的抽象(描述)
-
物以类聚人以群分
-
类:有相同特征的
-
把一些有相同特征的信息集中性放到同一个单元里面 单元--->类
-
类是我们程序当中最小的组成单元
-
信息----->一般我们放的是属性和方法
-
属性:
-
属性可以简单理解成局部变量
-
属性----->位置是在类中方法外的,除了可以存储一些数据,描述该类的一些信息
-
描述类的特征信息(外貌)
-
方法:
-
使用来执行一些功能的
-
对象:
-
对象是用来执行类当中定义的那些属性和方法的
-
对象它是类的一种实例化操作。
-
类当中定义的属性和方法在什么时候需要被定义静态的呢?
-
第一种情况:该类不允许在程序当中构建对象
-
单例模式---->要求在程序当中不管什么时候,什么地点被创建出来,始终是同一个对象 newInstance()
-
备注:
-
对象被创建出来就自动获取到该当中的所有信息,包括静态信息
-
对象创建的语法格式:
-
类名 变量名 = new 类名();
-
对象调用成员信息的语法格式:
-
调用成员变量(非静态的): 对象名.成员变量名; 如果在当前类的非静态方法中可以省略对象名,如果是在静态方法中不能省略
-
调用成员方法(非静态): 对象名.成员方法名(参数值);如果在当前类的非静态方法中可以省略对象名,如果是在静态方法中不能省略
-
封装:
-
封装意义:确保数据合法和安全性 提高代码可复制性
狭义上封装:对类中的属性进行私有化设置
具体操作:就是在属性前面添加private关键字
被private关键字修饰的信息只能在当前类中使用 -
对于成员变量来说,它只能在当前类中直接使用,不能在外类中直接使用。
-
对于成员方法来说,他只能在当前类中使用。
-
对于类当中被private修饰的成员变量,当前类需要给这些私有变量添加对应的Getter和Setter方法
-
Getter方法---->获取当前类中私有变量的值
-
public 私有变量对应类型 get私有变量名()
-
{ // 私有变量名--->首字母大写 -
return 私有变量名; }
Setter方法---->给当前类中私有变量设置值
-
public void set私有变量名(私有变量对应类型 私有变量名)
-
{ // 私有变量名-->首字母大写 -
this.私有变量名 = 私有变量名; }
-
备注:
-
以后定义类中属性的时候,一般情况下需要对类中属性做私有化设置,然后给它提供Getter和Setter方法
-
this关键字:
-
当在同一个类同一个方法中使用到了相同的名字(成员变量和局部变量名字相同),为了进行区分,使用this关键字
-
被this调用到的变量--->成员变量
-
没有被this调用到的变量---->局部变量
-
this关键字本身代表的是当前类的一个对象,谁来调用我,我就指代谁
-
备注:
-
可以在声明类的时候直接对成员变量进行赋值,那么所有通过这个类创建出来的对象,成员变量的值都是相等的,都是之前赋值的值
2022.6.24 周五



