javase第七天学习:(三条主线 + 内存解析 + 类的简单语法)

一.面向对象的主线

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();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值