java程序设计基础第9章第10章类与对象及面向对象总结(一)

一、类与对象

1、类 - 相当于程序的模板

注意:建议一个类一个.java文件 方便类管理!!

1)、类的组成

1、属性 - 数据、成员变量

2、行为 - 函数、成员函数

2)、对象 - 由一个类所描述的内容从而产生的一个具体的事物

1、对象的创建

目前而言 但凡创建对象 用new关键字
格式:类名/数据类型 变量名=new 类名();
例如: Person p=new Person();

 

二、面向对象

1、面向对象和面向过程

面向过程:面向过程是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,面向过程其实是最基本的思路

面向对象:面向对象是基于面向过程的思路


2、面向对象的好处

可以实现更加复杂的业务逻辑

3、封装与private关键字

1)、private关键字

private关键字就是一个权限关键字 public protected 默认不写,表示私有权限 该成员变量或成员函数只能够在类中被访问 外界不可访问

2)、private弊端和解决方案

弊端:private私有化关键字,成员变量加了private的话 修改不行了 获取也不行了

解决方法:创建setXXX方法和getXXX方法

 setter 是一个Java当中的规范 修改器 主要负责修改成员变量
 本身就是一个成员函数 命名方式一般为 setXxx:setAge setName

 getter 访问器 主要负责访问成员变量(返回成员变量) getter看需求

注意:代码中尽可能成员变量一律私有,然后再去设置访问器和修改器(无需修改的除外)

如果成员变量和局部变量重名了 如何区分呢?只需要在成员变量之前加this.即可

3)、封装

将一个模块的代码合并再一起,最大的好处就是节约代码 方便管理 降低耦合性

再不同代码中的体现:

循环:主要解决有规律且重复性执行的代码
函数:主要解决具有独立功能的一段代码 后期进行复用即可
数组:主要解决多种同类型数据的操作 统一操作 方便类管理
类:主要将数据和行为进行统一方便操作 仿真现实中的事物

4)、成员变量与局部变量的区别:

1、存储位置
        局部变量存储在栈内存中函数的所属空间里
        成员变量存储在堆内存中对象的所属空间里
2、生命周期
        局部变量随着函数的进栈而存在,随着函数的弹栈而消失
        成员变量随着对象的创建而存在,随着对象的销毁而消失
3、访问范围
        局部变量的访问范围仅仅在函数当中
        成员变量的访问范围在当前类中
4、初始化值
        局部变量必须先进行初始化 之后再能被调用
        成员变量在创建时有默认初始化 

5)、构造函数:(对象创建时运行的程序)

构造函数的主要作用:在创建对象之时对成员变量进行赋值操作
构造函数的格式:
权限修饰符 函数名(参数列表){
        函数体;
}

构造函数,没有函数类型关键字 没有返回值类型(并不意味着没有return),函数名必须是类名,但凡创建一个对象 构造函数就执行一次, 如果类中没有定义任何构造函数的情况下,则会有一个默认无参的构造函数。

注意:我们最好将那个无参的构造函数写出来!!!!!!!

5、构造函数与成员函数的区别

1、

构造函数只在创建对象的时候调用 而且仅仅调用一次
 成员函数在创建对象之后调动 可以调用任意次数

2、

成员函数能否调用成员函数 可以
成员函数能否调用构造函数 不可以的
3、

构造函数能否调用成员函数 可以

只不过此时的成员函数不应该当做对象的特有行为而向外界提供的,仅仅是构造函数中的代码略多 从而分出来的函数 本质上这个函数还是构造函数的内容,那么该函数一般被定义为private
4、

构造函数能否调用构造函数 可以 适当减少代码的冗余 提高构造函数的利用率,原则上一般是参数较少的构造函数调用参数较多的构造函数,具体的调用方式并不像成员函数一样 写个方法名
                              

注意:1、成员函数劲量和构造函数别重名, this(...) 对this的调用必须是构造器中的第一个语句
           2、构造函数可以调用构造函数 但是不能产生回调ERROR:递归构造器调用

6、static关键字

1、成员变量+static=静态变量

2、成员函数+static=静态函数

3、静态是优先于对象存在的

4、静态也称之为是类的成员,我们可以直接通过类去调用类.静态成员

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值