- 匿名对象及生命周期
- 匿名对象的概念
1.匿名对象,就是没有名字的对象[创建了一个对象而没有使用变量接收]
2.该对象存在于堆总处于游离状态:没有任何变量持有引用地址,指向他
3.但是匿名对象本质也是一个对象
1)int i = 10;//int数据类型 i变量 值,具体的一个数据
2)Student stu = new Student();//Student数据类型 stu对象 new Student();堆中的一个对象
- 匿名对象的作用
匿名对象的使用场景:
1.作为对象:只是使用一次(调用一次普通的方法)
2.作为数据值:把匿名对象作为一个[实际参数---实参]进行传递
3.作为数据值:匿名对象还可以作为返回值
- static关键字
- static的概念
static关键字:java规定的,赋予了特殊意义的,一个单词
- static可修饰内容的测试
修饰:考虑能够修饰什么东西?java中的东西
1.普通方法:可以
2.字段[成员变量]
3.类[
外部类:不行:java规定
内部类:写在类里面的类叫做内部类]可以 java规定!面向对象最后阶段,看内部类
本质内部类还是一个类而已!
4.局部变量:不行
5.构造方法:不行
- static修饰字段及方法应该如何使用
静态修饰符:类名.去访问
非静态的字段,非静态的方法:对象名.方法名+参数里:所以应该【通过对象访问】
- static修饰字段方法有什么作用
字段:一旦被静态修饰:该字段是被该类的所有对象共享
一旦一个对象,改了静态字段的值:其他对象用的都是改过之后的值
- static类级别的修饰符
感受类级别,对象级别的区别
1.如果有static修饰:改等于改的是一类的事物的静态属性
2.如果没有static修饰:改的就是对象自己的静态属性
- 包
- 包的概念及作用
包(package)是Java提供的一种区别类的名字空间的机制,是类的组织方式,是一组相关类和接口的集合,它提供了访问权限和命名的管理机制。
- 声明包
package cn.itsource.oa.erp.domain;
声明包:管理当前的这个类 :把当前的类,放入到所声明的包中
1.规范
a)自己一定需要有规范命名的意识,具体怎么写以公司标准为准;
b)包名中应该全部都是英文,并且是小写的
2.注意事项
a)包的必须在源文件的顶部最开始位置申明
b)同一个源文件中可以有多个类,编译生成的字节码文件都会在该包下面
3.目前阶段:想要用包,编译运行,原生命令去做:JDK下面的名字,直接用editplus工具不行
- 导入包
包的导入:
1.发现当前类中,每次要用其它包中的类,都要写完全限定名,好麻烦呀.....
2.import java.util.Arrays;//文件的前面,不是最前面{常用....}
import java.util.*;//*通配符 与任何的都可以匹配
import *;//瞎整
3.导包的作用是啥:确保当前类中,能够正确的使用到类型,并且不用每次都去写完全限定名
注意事项:
1.在同一个类中:都使用了类名一样的类!按照刚才导包行否?
相同类名,不能都通过导入的方式来引用
2.发现String 类在java.lang.String lang包中...没有导包也可以用到
lang包是核心包:不需要导包的,lang包里面的类,可以直接使用的
- 包的分类
1.Java已经写好了很多类,这些类存在于不同的包中!不同的包: 装的是作用不同的类!
1)java/ javax(java增强包)
2)java.lang (java的核心包--基本包)
3)java.util(java的工具包 --集合框架)
4)java.io(java IO包 读写文件)
5)java.net(网络编程)
java.awt/javax.swing(java的图形化界面GUI)
- 封装
- 封装的概念
通过封装的操作,可以达到从物理层面控制访问(外面不能轻易访问到里面内容--》这个就是物理层面)
- 权限的介绍
1.现在在当前类中,如果Student类中的成员,不进行封装,随便修改,访问!
2.给成员提供private权限之后,外部根本没法用!
- 封装的步骤及分析
标准的封装步骤:
1.私有化字段,提供private的权限
2.标准的提供getset方法!而且本质就是普通方法而已...
3.提供一个无参数的构造方法
- 封装的注意事项
注意:如果字段类型是boolean sex;
方法名字规范:
setSex
getSex---变成---->isSex
- this
- this的概念
this概念 : 指代当前对象,持有当前对象的地址值
- 如何区分this指代的对象
怎么判断this到底持有的那个对象的地址值
1.官方说法:this所在的函数【普通方法,构造方法】,正在被谁调用,this就指代谁?
2.民间版本:this:当前被那个对象持有,this就指代谁:
- this的使用场景
1.this的使用场景:主要还是看你在设计一个类的时候,他能干什么
1.区分了成员字段,和局部变量的二异性
2.this:持有当前对象的地址值?
1.对象:
2.数据:
设计代码的时候作为参数传递
3.this可以在当前类中,构造方法之间相互调用
- 如何理解this的语法设计
this 正在被 那个对象所调用或者说 所持有,this 就指代的这个对象。