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. 年年出妖事,一例由JSON解析导致的"薛定谔BUG"排查过程记录

    前言 做开发这么多年,也碰到无数的bug了.不过再复杂的bug,只要仔细去研读代码,加上debug,总能找到原因. 但是最近公司内碰到的这一个bug,这个bug初看很简单,但是非常妖孽,在一段时间内我 ...

  2. js项目案例

    2021.04.12 --mouseover抖动情况之一

  3. 中间件漏洞之IIS

    IIS中间件漏洞 我们常见的中间件有IIS.Apache.Nginx,其中IIS中间件有什么漏洞呢? IIS 短文件名漏洞: 漏洞产生的原因是为了兼容MS-DOS程序,windows为文件名较长的文件 ...

  4. go 语言开发2 简易数据库和web代码示例

    数据库开发示例 package dao import ( "github.com/go-xorm/xorm" "fmt" ) type UserInfo str ...

  5. 出现bash: ifconfig:command not found的解决办法,即安装ifconfig命令(亲测有效)

    初装centos 7时,运行config报 command not found 错误, ifconfig命令是设置或显示网络接口的程序,可以显示出我们机器的网卡信息,可是有些时候最小化安装CentOS ...

  6. Vue组件之间通信

    vue组件传值有以下几种情况: 父组件向子组件传值.子组件向父组件传值.兄弟组件之间传值等 一.父组件向子组件传值: 传值方式: props <father> // 动态传递值 <s ...

  7. k8s client-go源码分析 informer源码分析(3)-Reflector源码分析

    k8s client-go源码分析 informer源码分析(3)-Reflector源码分析 1.Reflector概述 Reflector从kube-apiserver中list&watc ...

  8. ubuntu 获取 gateway 网关 ip

    输入以下命令,第一行中 Gateway 列就是网关 IP netstat -rn

  9. 【算法】希尔排序(Shell Sort)(四)

    希尔排序(Shell Sort) 1959年Shell发明,第一个突破O(n2)的排序算法,是简单插入排序的改进版.它与插入排序的不同之处在于,它会优先比较距离较远的元素.希尔排序又叫缩小增量排序. ...

  10. vue项目|在弹窗中引入uchart图表子组件不显示

    为了解决uchart作为子组件在主组件里引用但不显示的情况,(同样适用于弹窗之中)目前有三种方法. 1-解决方式 1>如果你使用的uchart子组件是从官方拿的例子:进入到uchart子组件将o ...