this关键字

this关键字由来和使用:
A:this:代表所在类的对象引用方法被哪个对象调用,this就代表那个对象
B:什么时候使用this呢 ? 局部变量和成员变量重名

set 和 get 方法

构造方法

构造方法(构造器):每个类都有一个默认的无参构造器,jvm自动给我们添加的, 如果我们手写一个构造器,jvm不会给我们自动添加构造器。

语法:
<访问修饰符> <方法名称>(参数列表){
实现体
}

A:构造方法格式

a:方法名与类名相同

b:没有返回值类型,连void都没有

c:没有具体的返回值

作用:对类进行初始化

	Student s = new Student();//这时调用的是Student的无参数构造方法;
Student s = new Student(“tony”);//这时调用的是Student的有参数构造方法;
构造方法注意事项与重载

如果你不提供构造方法,系统会给出默认构造方法

如果你提供了构造方法,系统将不再提供

构造方法也是可以重载的,重载条件和普通方法相同

规则:

构造函数名称与类名称相同可以有多个,参数列表不同即可(重载)构造函数没有返回类型,可以有权限修饰符修饰其任务是在创建对象时初始化其内部状态

构造函数间的调用:

在一个构造函数中调用另一个构造函数时,用this关键字。

构造器只能在构造器中被调用,而且必须放在代码的第一行,并且不能在一个构造函数调用两个以上的构造函数。

public Student(String name){}
public Student(int age,String name){
this(name);
//this:代表 当前类的对象
//this():代表当前类的构造器
}
  • 面向对象的特征:封装
  • 1.代码层面
  •  (1)属性私有化,所有的属性都要使用private封装
  •  (2)提供一个公有的set,get方法。
  •  getter方法能够按照客户的期望返回格式化的数据
  •  setter方法可以限制和检验setter方法传入的参数是否合法
  •  隐藏对象的内部结构
  • 正确定义一个类:
  •  (1)所有的属性私有化
  •  (2)每个属性都有对应的setter、getter方法
  • 2.思想层面

    总结:1.今天学习的内容比较抽象,还好之前有过学习所以理解起来就很容易,要是换作以前肯定自我会怀疑。觉得学不会,想不通之类的问题。

    2.set 和 get 方法最主要的作用就是整合之后学习的框架

    3.this 就是代表所在类的对象引用方法被哪个对象调用

2022-7-19 第五组 pan小堂 封装和 this的更多相关文章

  1. 2022-7-13 第五组 pan小堂 java基础

    ###java基础 1.java语言发展史和概述平台(了解) 詹姆斯·高斯林(James Gosling)1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机 ...

  2. 2022-7-16 第五组 pan小堂 基础语法

    思维导图 一维数组 数组是存储多个变量(元素)的东西(容器) 这多个变量的数据类型要一致 数组既可以存储基本数据类型,也可以存储引用数据类型. 1.数组定义的格式: 格式1:数据类型[] 数组名; 格 ...

  3. 2022-7-11第五组 pan小堂 js基础

    ##为何学习 JavaScript? ###JavaScript 是 web 开发者必学的三种语言之一: HTML 定义网页的内容 CSS 规定网页的布局 JavaScript 对网页行为进行编程 在 ...

  4. 2022-7-12 第五组 pan小堂 js

    JavaScript Switch 语句 (熟悉掌握) 请使用 switch 语句来选择多个需被执行的代码块之一. 语法: switch(表达式){ case n: 代码块 break; case n ...

  5. 2022-7-25 第七组 pan小堂 多态

    多态 多态是继封装.继承之后,面向对象的第三大特性. 现实事物经常会体现出多种形态,如学生,学生是人的一种,则一个具体的同学张三既是学生也是人,即出现两种形态. Java作为面向对象的语言,同样可以描 ...

  6. 2022-07-10 第五小组 pan小堂 css学习笔记

    css学习笔记 什么是 CSS? CSS 指的是层叠样式表* (Cascading Style Sheets) CSS 描述了如何在屏幕.纸张或其他媒体上显示 HTML 元素 CSS 节省了大量工作. ...

  7. 2022-7-23 pan小堂 Object与Final

    Object类 1.Object方法 public final native Class<?> getClass() 返回object运行时类 public native int hash ...

  8. 2022-7-21 第七组 pan小堂 继承与super与this

    1.继承 1.1继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系. 1.2继承的格式 class 子类 ...

  9. 2022-7-20 第七组 pan小堂 String

    字符串 String 字符串部分方法 字符串对象的特点: 1.Java程序中所有双引号引起来的内容,都是String类的对象 2.字符串内容不可变,它们的值在创建后不能被更改(在底层被final修饰, ...

随机推荐

  1. 函数式接口和@FunctionalInterface

    函数式接口的特点 接口有且仅有一个抽象方法 允许定义静态方法和默认方法(这两个都不是抽象方法) 允许java.lang.Object中的public方法(因为任何一个函数式接口的实现,默认都继承了Ob ...

  2. SpringBoot Redis 实践指南

    前言 SpringBoot Cache 是一个很好的缓存框架,可以兼容多种缓存实现,数据量较大的情况下,Redis 应该是最多被使用的. 本文重点介绍 SpringBoot 和 Redis 整合使用的 ...

  3. 安装Python到Linux(Pyenv)

    pyenv是一个多Python版本的托管工具,我们可以使用它安装Python和随意的切换系统环境中默认使用的Python版本. 运行环境 系统版本:CentOS Linux release 7.6.1 ...

  4. Redis(1)- Redis数据库的安装和配置

    1.Redis安装 1.1.Linux环境安装Redis step-1:下载Redis 进入官网找到下载地址 https://redis.io/download wget https://github ...

  5. Pandas 分组聚合 :分组、分组对象操作

    1.概述 1.1 group语法 df.groupby(self, by=None, axis=0, level=None, as_index: bool=True, sort: bool=True, ...

  6. 互联网大厂目标管理OKR实践落地与反思

    上一篇「 互联网公司目标管理OKR和绩效考核的误区 」介绍了使用 OKR 时要澄清的一些概念,但是实际使用中又如何呢?我们快手也是很大的互联网公司,大家都是年轻人,思维活跃,容易接受新事物,敢尝试,但 ...

  7. 想学设计模式、想搞架构设计,先学学UML系统建模吧您

    UML系统建模 1 概述 1.1 课程概述 汇集UML及其相关的一些话题 回顾UML相关的符号与概念 以电商订单相关业务为例,借助UML完成系统建模 将UML变成提升建模效率,表达架构思想的工具 1. ...

  8. 【RocketMQ】NameServer的启动

    NameServer是一个注册中心,Broker在启动时向所有的NameServer注册,生产者Producer和消费者Consumer可以从NameServer中获取所有注册的Broker列表,并从 ...

  9. SAP APO-需求计划

    需求计划可以对市场中的产品进行预测. 需求计划过程的输出就是需求计划,它考虑了影响需求的所有因素. 需求计划流程定义了需求计划周期中的活动. 由于需求计划过程以循环的形式进行,因此可以重复某些活动. ...

  10. 全新升级的AOP框架Dora.Interception[6]: 实现任意的拦截器注册方式

    Dora.Interception提供了两种拦截器注册方式,一种是利用标注在目标类型.属性和方法上的InterceptorAttribute特性,另一种采用基于目标方法或者属性的调用表达式.通过提供的 ...