面向对象语法概念

 

  1. 匿名对象及对象的生命周期
  1. 什么是匿名对象
  1. )匿名对象,就是没有名字的对象[创建了一个对象而没有使用变量接收]
  2. 该对象存在于堆总处于游离状态:没有任何变量持有引用地址,指向他
  3. 但是匿名对象本质也是一个对象

 

  1. 匿名对象使用场景
  1. 一个对象就是一个数据   
  2. 既然是一个数据可以当成参数传递

 

  1. 对象的生命周期(了解)

1)开始 : new Student()  ,new的时候就开始了;

2)结束

    1. 说法1常见的说法 :当对象失去所有的引用(没有变量再指向它了(没有变量在存储它的地址)- 相当于失联了,我们无法再使用它了)-- 就是死亡了;

3)结束

    1. 说法2 :对象真正的被销毁(对象会在堆里面占用内存,当把对象的内存空间回收了)
    2. Java有自动垃圾回收机制;

 

  1. static关键字
  1. static可以修饰的内容

1)可以修饰普通方法

2)可以修饰字段[ 成员字段 ]

3)可以修饰内部类[暂时不了解]

4)不可以修饰外部类

5)不可以修饰局部变量;

6)不可以构造方法

 

  1. 修饰字段

1有static修饰的字段应该是字段所在 类名.字段名 进行访问

2没有static 修饰的字段: 字段所在的类的对象:对象名.字段名 进行访问

3)加了static修饰的字段:该字段被该类所有对象共享:当一个对象修改了该字段,其他对象使用该字段,都是修改之后的值

 

 

  1. 修饰方法

1)有static修饰的方法: 方法所在的 类名.方法名(...);

2)没有static修饰的方法 : 方法所在的类的对象名.方法名(...);

3)使用static修饰的方法调用方便

4)工具都是static修饰的

 

 

  1. static类级别和对象级别
  1. static类级别的修饰符理解
    1. static修饰的字段:应该通过类名.字段名访问
    2. static修饰的字段:应该通过类名.方法,该字段被该类的所有对象共享
  2. 对象级别
    1. 非static修饰的字段:对象名.字段名
    2. 非static修饰的字段及方法,当创建对象时候,独属于每一个对象,没有被该类的所有对象共享

 

  1. 什么是包
  1. Java包概念包(package)是Java提供的一种区别类的名字空间的机制,是类的组织方式,是一组相关类和接口的集合,它提供了访问权限和命名的管理机制
  2. 为了方便管理类:分别存入不同的包(文件夹)

 

  1. 包作用
  1. 可以管理代码结构
  2. 可以避免类名冲突的问题

3)包命名规范:一般是  公司域名 反过来写  + 项目名+模块名字+子模块名

例如 : itsource.cn 域名

语法 :   package cn.itsource.erp.oa.domain;

4)包的必须在源文件的顶部最开始位置申明

同一个源文件中可以有多个类,编译生成的字节码文件都会在该包下面

5)类的完全限定名 : 包名.子包名.类名

  1. 包导入
  1. 在一个类中需要使用到其它的包中的类,可以先导入在便捷的使用
  2. 目的: 是为了正确的引用到指定的类型
  3. 注意: 导入包的代码应该在声明包的后面,声明类的前面
  4. 语法:
  1. import 包名.子包名.类名;
  2. import 包名.子包名.*;//*通配符,通配该类所在的子包名
  3. 通一个类中用到了java.util.Date   java.sql.Date   导入会区别不了二异,所以通过完全限定名的方式使用
  4. java.lang这是Java规定的核心包,使用的时候会自动导入,所以不用手动导入

 

 

 

 

  1. 变量

1)局部变量的作用 : 一般都是方法中,为了辅助方法完成功能而临时定义的变量;

2)类变量  : 有static修饰的成员变量(字段);

3)实例变量: 没有static修饰的成员变量(字段);

 

  1. 封装
  1. 把对象的状态和行为看成一个统一的整体,将二者存放在一个独立的模块中(类)
  2. 信息隐藏:把不需要外界知道的信息隐藏起来,尽可能隐藏对象功能的实现细节。
  1. 把类中的字段私有化;
  2. 给每一个字段都提供一组getter  setter方法  (方法的规范写法);setXxx

在测试类中尝试创建对象,并通过调用getter setter方法完成 对字段的赋值和取值;

  1. 提供一个无参数的构造方法

 

6.this

  1. this介绍
  1. this的概念:this指代当前对象,持有当前对象的地址
  2. 如何判断this指代的是哪个对象
  1. 官方:this所在的函数,正在被谁调用this就指代谁

民间 :this当前被对象持有,this就指代谁,模板---->复印件

3.this持有当前的对象地址 : this应该在类设计的时候使用

4.this不能写在静态的方法中 : 无法从静态上下文中引用非静态 变量 this

 

  1. this使用
  1. 解决局部变量和成员变量的二义性   ---  get  set 方法中的应用[在get/set可以写this]
  2. 作为返回值返回  : this持有对象地址,表示该类的一个对象即是一个数据
  3. 作为参数传递  

本类中构造方法之间的相互调用

 

 

 

转载于:https://my.oschina.net/u/4083694/blog/3020347

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值