• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

lzsykal

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

20220719 第九组 张嘉源 学习笔记

访问权限修饰符;构造器;this关键字;封装

一、笔记

访问权限修饰符

public

共有的,公共的 权限最大,只要是public声明的方法,只要在同一个工程中,都能用。

可以放在类、属性、方法、构造器上

protected

受保护的:可以跨包,如果跨包必须是它的子类

可以放在属性、方法、构造器上

default

默认的(啥也不写),只有当前包下可以访问(把包导进来也不行)

可以放在类、属性、方法、构造器上

private

私有的 权限最小,只有在当前类才能用

可以放在属性、方法、构造器上

构造器

语法:访问权限修饰符 类名(参数列表){ }

特点(特性):

1.Java在new对象的时候,先看对象所对应的类有没有构造器,有的话有什么样的构造器;如果没有构造器,则无法构建对象(创建对象)

2.每个类会有一个默认的无参的构造器

3.在对象被实例化时调用了构造器

4.我们创建对象实际上是通过构造器创建的

5.如果一个类中显示的声明了一个构造器,原来默认自带的无参构造器就失效(被覆盖)。如果有多个构造器,必须重载。

this关键字

this代表的是当前类的对象,this代表的是当前方法的调用者,当使用对象调用属性时,调用的是成员变量,this既然是代表方法的调用者,它实际上和对象的作用是一样的,既可以调属性,也可以调方法

this调用构造器的要求:

1.必须在构造器中使用this调用构造器

2.必须在第一行代码

this不能用在static方法中,开发中,通常用this赋值,尤其是构造器。

封装

(1)属性私有化,所有的属性都要使用private封装

(2)提供一个共有的set,get方法

getter方法能够按照客户的期望返回格式化的数据
setter方法可以限制和检验setter方法传入的参数是否合法

隐藏对象的内部结构

正确定义一个类要求:
(1)所有的属性私有化
(2)每个属性都有对应的setter、getter方法

封装步骤

1.修改属性的可见性来限制对属性的访问(一般限制为private),例如:

public class Person {

​ private String name;

​ private int age;

}

这段代码中,将 name 和 age 属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏。

2.对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问,例如:

public class Person{

​ private String name;

​ private int age;

​ public int getAge(){

​ return age;

​ }

​ public String getName(){

​ return name;

​ }

​ public void setAge(int age){

​ this.age = age;

​ }

​ public void setName(String name){

​ this.name = name;

​ }

}

采用 this 关键字是为了解决实例变量(private String name)和局部变量(setName(String name)中的name变量)之间发生的同名的冲突。

posted on 2022-07-20 19:53  林钟朔一  阅读(21)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3