我是靠谱客的博主 仁爱酒窝,最近开发中收集的这篇文章主要介绍Day6-类与对象、封装、构造方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第一章 面向对象思想

概述

面向过程:每一个步骤都要亲力亲为,详细处理每一个细节。(自己洗衣服)
面向对象:通过调动对象的行为实现功能。(全自动洗衣机)三大基本特征:封装、继承和多态

类与对象
  • 类:属性(成员变量)+行为(成员方法),是抽象
  • 对象:类的实例,是具体
  • 类是对象的模板,对象是类的实例
类的定义
package cn.itcast.day06.demo01;
public class Student {
//成员变量
String name;
int age;
//成员方法
//吃饭
public void eat(){
}
//学习
public void study(){
}
//睡觉
public void sleep(){
}
}
  1. 成员变量定义在类中,在成员方法的外边。
  2. 类中的成员方法没有static修饰符。
对象的使用

通常一个类并不直接使用,需要创建一个类的对象,才能使用

  1. 导包:指出要使用的类在什么位置
    1. import 包名称.类名称
    2. 若与当前类在同一个包中,则可以省略导包语句不写
  2. 创建:格式
    类名称 对象名 = new 类名称();
  3. 使用:两种情况
    1. 使用成员变量:对象名.成员变量名
    2. 使用成员方法:对象名.成员方法名(参数)

若成员变量没有赋值,将会有一个默认值,规则和数组一样。

对象内存图

一个对象的内存情况

两个对象的内存情况
两个对象名称指向同一空间

类作为参数或返回值
  1. 类作为参数,传递的是地址值

类作为参数
2. 类作为返回值,返回的也是地址值

类作为返回值

成员变量和局部变量
  1. 定义的位置不同
    成员变量:在类里,在成员方法外
    局部变量:在方法内部
  2. 作用点的范围不同
    成员变量:在整个类中都可以使用
    局部变量:只能在方法中使用
  3. 默认值不同
    成员变量:无需赋值就可以使用,有默认值。
    局部变量:必须自己赋值以后才能使用。
  4. 内存中的位置不同
    成员变量:在
    局部变量:在
  5. 生命周期不同
    成员变量:随着对象的创建而诞生,随着对象被垃圾回收而消失。
    局部变量:随着方法进栈诞生,随着方法出栈消失。

方法中的参数时局部变量,在调用时必然会被赋值。


第二章 封装

封装:将一些细节信息隐藏起来,对于外界不可见。

封装性的体现
  1. 方法就是一种封装
  2. 关键字private也是一种封装
    1. 一旦使用private进行修饰,那么本类中仍然可以随意访问。但是!超出本类就不能直接访问。
    2. private修饰成员变量要定义setXxxx方法和getXxxx方法进行限制修改和访问
    3. boolean类型成员变量的getXxx方法写成isXxx。
this关键字
  1. 当成员变量和参数名相同时,根据“就近原则”,会优先使用参数。要想使用成员变量的话,就需要使用this关键字。
  2. 通过谁调用的方法,谁就是this。(一般就是实例化对象的地址值)

第三章 构造方法

构造方法是专门创建对象的方法,当我们通过关键字new创建对象的时候,其实就是调用构造方法

public 类名称(参数类型 参数名称){
方法体;
}

注意事项:

  • 构造方法的名称要与类名称完全一样,包括大小写
  • 构造方法没有返回值类型和返回值
  • 如果没有编写任何构造方法,编译器会默认编写一个没有参数和方法体的构造方法。
  • 一旦编写了构造方法,编译器则不再默认编写构造方法。
  • 构造方法也可以进行重载。
综合练习

标准的类(Java Bean)要求

  1. 所有的成员变量都使用private修饰
  2. 为每一个成员变量编写一对Getter、Setter方法
  3. 编写一个无参构造方法
  4. 编写一个全参数的构造方法

最后

以上就是仁爱酒窝为你收集整理的Day6-类与对象、封装、构造方法的全部内容,希望文章能够帮你解决Day6-类与对象、封装、构造方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部