师兄分享的视频好好看(2018.12.20)

第七天的视频,做下笔记。

在这里插入图片描述

栈内存的变量必须是声明定义赋值后才可以使用;堆内存中的变量是有默认值的。

举例子如下;
在这里插入图片描述

在这里插入图片描述

2:形式参数

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3:匿名对象

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

问题:匿名对象有什么好处吗?

可以提高内存的使用效率,匿名对象调用完毕就是垃圾,可以被垃圾回收器回收。

在这里插入图片描述

两个对象都使用匿名对象:
在这里插入图片描述

4:封装性的引出

在这里插入图片描述

上例子;在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5:private关键字

在这里插入图片描述

在这里插入图片描述
在上述图形中,类中的method方法也是private修饰的,最后如果需要调用,还是需要另外一个public方法来帮助调用!一般来说,它只用来修饰属性,而不用来修饰方法。

6:为什么不在setXxx()中做数据校验了

因为数据在网络页面上录入的时候就及进行了数据的校验。

7:this:代表所在类的对象引用,简单说,就是当前类的一个对象

在这里插入图片描述

开始:

在这里插入图片描述

在这里插入图片描述

上面的代码明显不符合我们之前约定的规则;

在修改规则后代码如下,但是又有了一个新的规则:变量的就近原则。
在这里插入图片描述

上面的代码:把形式参数中的name自己赋值给了自己,而不是类中的name

在这里插入图片描述

8:理解谁调用方法就代表谁

在这里插入图片描述

9:构造方法格式
在这里插入图片描述

在这里插入图片描述

观察上述代码:方法才有括号。所以:Student s= new Student();后边的这个其实就是默认的构造方法。

10:构造方法哪里来的

在这里插入图片描述

构造方法重载是一个方法重载的现象;

这个时候我们知道了;给成员变量赋值有两种方法;
在这里插入图片描述

11:类的初始化过程

在这里插入图片描述

举例子;
在这里插入图片描述

12:什么时候定义成员变量

在这里插入图片描述

13:static关键字
在这里插入图片描述

static修饰的成员变量是所有对象共享的。

在这里插入图片描述

为什么main方法是静态的,因为它是被虚拟机调用的,没有创建对象,直接(类名.main),所以修饰为静态;

在这里插入图片描述

14:与static相关的内存分配

方法区专门有一个静态区;

静态的内容随着class(类)的加载而加载;

main是静态修饰,静态可以通过类名调用,所以根本就不需要创建对象就进栈内存;

内存图如下:
在这里插入图片描述

15:注意事项

在这里插入图片描述

在这里插入图片描述

16:静态变量和成员变量

在这里插入图片描述

17;main方法是静态的

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值