面向对象
一.多为数组
1.数据类型[][] 数组名= new 数据类型[m][n];
m:二维数组中的一维数组的个数
n:表示以为数组中的元素个数
2.数据类型[][]数组名=new 数据类型[m][];
m:表示二维数组中的以为数组的个数
3. 数据类型[][] 数组名 = new 数据类型[][]{{元素1,元素2…},{元素1,元素2…},{元素1,元素2…}…};
-
简写: 数据类型[][] 数组名 = {{元素1,元素2...},{元素1,元素2...},{元素1,元素2...}...};// 第一个次定义的时候可以简写
*/
二.面向对象
概念:每个事物都能抽象成具有一定属性和行为的结构体,而且结构体都有属于自己的功能;
面向过程:注重的是过程,每一步都需要自己亲自经历的,需要自己设计过程
面向对象:注重的是结果,过程不需要自己亲自经过,只需要调用结果就可以
面向过程的三大特征:封装 继承 多态 (抽象)
三.类和对象的关系
类:类是一种自定义的类型,可以当做一种相似事物的统称
对象:符合类特征的具体事物.
关系:类是抽象的,对象是具体的;对于事物的描述,特征描述值得就是类里面的属性变量,行为描述就指的是类中的方法
四.类的六大组件
成员变量:定义在方法外,不被static修饰的变量,存储在堆内存中,有初始值,随着对象的创建而产生,随着 对象的消失而消失
成员方法:一般用对象调用
静态变量:
静态方法:一般用类名调用,比如Arraryutil,中调用打印数组的方法
局部变量:定义在方法中或着是参数列表中的变量,存储在栈内存当中,没有初始值,随着方法的调用而产生,随着方法的结束而消失
构造方法:和类名相同,不被static 修饰,连void返回值也没有
注意事项:一个文件中,只要能有一个类可以被public修饰,并且类名必须和文件名相同;
匿名对象: 没有名字的对象,比如 new person();
封装:
封装的基本步骤:
1.成员变量私有化;(被private修饰)
2.提供一种可以调用的方法(public)
2.1:get方法,get方法是有返回值得,是用来获得属性的
2.2:set方法,set方法是没有放回值得,是用来修改属性值得,也就是给成员变量赋值
构造方法:
格式:修饰符 类名(参数列表){
方法体
}
构造方法的注意事项:
1.构造方法没有返回值,连返回值也没有
2.方法名和类名相同
3.构造方法是可以重载的(一个类中可以存在多个名字相同的方法但是必须保证参数的个数或类型不同,与返回值无关)
构造方法合适被调用:
使用new关键字的时候
如果我们没有在类中写构造方法,则系统就会默认为我们生产一个无参的构造方法,
如果我们写了构造方法,则系统不再为我们提供构造方法
作用:简单来说:构造方法就是为我们new对象是使用的