欢迎分享,转载请注明来源:内存溢出
一.面向对象的主线
1.面向对象的三条主线
java类以及类成员,面向对象的三大特征,其他关键字
java类以及类成员:属性,方法,构造器;代码块,内部类。
面向对象的三大特征:封装线,多态性,继承性。
其他关键字:this,super,static,final,abstract,interface,package,import.
2.面向过程和面向对象的区别
打开冰箱,放入大象,关上冰箱
人{打开(冰箱)} 冰箱{开开()闭合()}大象{进入()}
3.基本要素:抽象类,实例对象
重点是类的设计即设计类的成员:属性(field)+方法(method)
4.类的使用
创建类,设计类成员
创建类的对象
通过对象调用相关结构
5.类的内存解析
person p = new person()
即在栈中放入局部变量p,并且在堆中创建person的相关属性地址为ox1111赋值给p。
person[] p = new person[10]
person[1] = new person()
p[1].sex=“男”//调用错误,此时p[1]仍未有地址,需要new
即先在栈中放入局部变量p,并且在堆中创建一个十维数组(初始值为null)地址ox1111赋值给p,之后再new一个新的person放入堆中,此person的地址ox1112赋值给p[1]
原理同int[][] a =int[3][];a[1]=new int[3];
注意此时p[1]=a[1];//不能,虽然都是代表地址,但是地址存放的东西不同,在p[1]地址中存放student的属性,而在a[1]地址下存放int型的整型数据。即地址值含变量的类型
二.具体语法
1.类中属性的使用
成员变量(属性)和局部变量的异同
成员变量定义在类中,而局部变量可以是形参,可以是方法内,构造器内。
成员变量可以指明其权限(缺省,public,static),而局部变量不可以使用权限
成员变量有默认值,而局部变量没有默认初始值。例如int aaa;此时没有初始化!!会报错。例如二维数组int[][] a =new int[3][3];此时a[1][1]默认为0!!没有错误。数组此时的a[1]相当于成员变量!!!!
成员变量个存在堆空间,而局部变量加载到栈空间。
成员变量和局部变量都需先声明后使用,都有作用域。
2.方法:描述类具有的功能
方法的声明:权限修饰符 返回值类型 方法名(形参列表){方法体}
权限修饰符:private,public,缺省,protected
返回值类型:void表示无返回值,有返回值类型需在后面return一个返回值且和类型相同
方法名即标识符规则:见名知意
形参列表:可以是多个
方法体。
3.return的使用
使用在方法体中,结束方法,针对返回值返回,后面不可以有执行语句。
4.方法的使用
可以调用属性和其他方法
方法里不能定义方法
5.对象数组!!
student[] class1=new student[10];
class1[1]=new student();
赞
(0)
打赏
微信扫一扫
支付宝扫一扫
C语言指针
上一篇
2022-09-23
C语言程序设计教程(第三版)李凤霞 第十一章课后习题答案
下一篇
2022-09-23
评论列表(0条)