Java-11封装

本文介绍了Java编程中的封装原则,如何通过private和public修饰变量与方法,以及包的概念、创建和引入。还详细讲解了静态修饰符在类变量、方法和代码块的应用,强调了封装在提高代码重用性和维护性中的作用。
摘要由CSDN通过智能技术生成

声明

Statement

文章用于本人个人学习记录,目前大一正处于学习之阶段,文章内容如引起不适请见谅。
img

主要内容

  • 封装的好处
  • 包的使用
  • 访问修饰符
  • static 修饰符(重点)

第一节 封装(Encapsulation)

定义

将代码中的部分方法和参数隐藏起来,使用private,在类外不能直接访问private 的变量

如何访问变量

将类中的所以成员变量修饰为private,变量通过公有方法Getter和Setter改变成员变量

快捷生成右键generate生成,Alt+Insert

合法性校验

在Getter和Setter中加入控制语句,对输入进行合法判断

为什么使用封装

  1. 封装提高代码重用性,因为封装会提供访问的公开方法,方法可以重用

  2. 维护了代码的可维护性,修改代码时只需要修改部分代码,不会影响其他部分

    比如:年龄在设计时只考虑到了负数,没有考虑生活实际,一般人不会超过200岁,因此加上一层验证

  3. 封装类隐藏类的具体实现细节,保护了代码实现逻辑

第二节 包(package)

1.什么是包

Java中的一个专业词汇,包的本质是文件夹。

2.为什么使用包

因此包可以对我们编写的类进行分类,可以防止命名冲突和访问权限限制(文件属性可以控制谁能修改谁能访问)

3.如何创建包

语法

package 包名;

报名命名规范:

包名一般是由小写字母和数字组成,每个包之间用’.‘隔开,换而言之,一个’.‘就是一个包

类名前面一般都有前缀。

比如个人/组织通常都是org.姓名,公司通常 com.公司名称简写或者cn.公司名称简写

如果一个类中有包的定义,第一行有效代码一定是包的定义

4.如何引入包

为了使用不在同一包中的类,需要使用Java的关键词import引入这个类

语法

import 包名.类名;

类的全限定名:包名+’.‘+类名。

全限定名用于唯一标识一个类,避免在多个包中存在相同类名时的混淆。//找到唯一的需求类

为什么引入包?

告诉JVM引用的哪一个包中的哪一个类。因为JVM只能访问当前包的类,其他的他不会默认访问,需要import才能使用。

一个类同时引用了来自调用了不同包的同名类,必须通过完整的类名(类的全限定名)来区分

例如:调用了两个Scanner,一个来自其他类,一个来自java.util,使用java中的Scanner进行输入时,只是举例,一般不会重名Scanner

java.util.Scanner scanner = new java.util.Scanner(System.in);

5.常用包的说明

java.lang包:属于Java语言开发包,该包中的类可以直接拿来使用,不用引入。JVM会自动引入。

经常使用 System、String、math

java.util包:属于Java提供的一些使用类以及工具类,常用的有Scanner

第三节 访问修饰符

1.概念

访问修饰符就是控制访问权限的修饰符号

2.类的修饰符

类的访问修饰符只有两种:public修饰符和默认修饰符

public表示可以公开访问,import调用。

默认修饰符表示使用范围只在本包之中,被保护了,被调用也使用不了。

3.类的成员修饰符

类的成员包括成员变量和方法

在这里插入图片描述

类外部不能访问private修饰的变量

4.static修饰符

1.static修饰应用范围

static修饰符只能用来修饰类中定义的变量名、成员方法、代码块以及内部类。

2.static修饰成员变量

不用创建对象就能使用,static修饰的部分属于类本身,属于类的属性,而不是一个特定的对象的部分

使用static修饰的成员变量称之为类变量。属于该类所以成员共享。不会随着成原的变化而变化。

如果static类是公开的,那么可以直接用类名.属性名直接访问成员变量

3.static修饰成员方法

不用创建对象就能使用,static修饰的部分属于类本身,属于类的属性,而不是一个特定的对象的部分

使用static修饰的成员变量称之为类方法。属于该类所以成员共享。不会随着成原的变化而变化。

如果static类是公开的,那么可以直接用类名.方法名直接访问

4.static修饰代码块

static修饰的代码块称为静态代码块,在JVM第一次记载类时执行。因此,静态代码块只能够被执行一次,通常用于一些系统设置场景。

第一次指的是使用了类的方法或者构造方法

static{
    country="中国";
}

5.static 内存

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值