封装——Java成长之路

封装

Hello!CSDN的小伙伴们。
这里是老汉的Java成长之路专栏,感兴趣的话就关注老汉并订阅本系列的专栏一起学习吧。

前言

本期老汉为大家介绍Java封装的相关知识,封装是面向对象的一种概念,对数据进行保护,能大大提高程序安全性,下面就跟随老汉一起进入本期的学习吧。

一、封装特点

1.只通过规定的方法访问数据
getter、setter方法

2.隐藏类的实例细节,方便修改和实现

示例图如下:
在这里插入图片描述

二、封装用途示例

前面我们有提到封装是为了保护数据,提高程序安全性,下面我来写个示例

题目案例:
创建getter、setter方法设置时间规则,对时间数据进行操作
要求:
时 (hour):最大数值不超过24,到达24则为0
分(minute):最大数值不超过60,到达60则为0
秒(second):最大数值不超过60,到达60则为0

//使用private进行封装操作
    private int hour;//时
	private int minute;//分
	private int second;//秒
//getter和setter方法
	public int getSecond() {
		return second;
	}
	public void setSecond(int second) {
		if(second<60) {
			this.second=second;//小于60则直接赋值
		}else {
			this.setMinute(this.minute+(second/60));//大于60先对分进行赋值,所有赋值操作均使用setter方法
			this.second = second%60;//余数则为当前数值
		}
	}
	public int getMinute() {
		return minute;
	}
	public void setMinute(int minute) {
		if(minute<60) {
			this.minute=minute;//小于60则直接赋值
		}else {
			this.setHour(this.hour+(minute/60));//大于60先对时进行赋值,所有赋值操作均使用setter方法
			this.minute = minute%60;//余数则为当前数值
		}
	}
	public int getHour() {
		return hour;
	}
	public void setHour(int hour) {
		this.hour = hour%24;//余数则为当前数值
	}

三、包

1.定义包

语法:
package 包名;
例如:package com.code_homeycomb.package_demo;

注意:
a. 必须放在Java源文件中的第一行
b. 一个Java源文件中只能有一个package语句
c. 包名全部英文小写
d. 命名方式:

indi :
个体项目(individual),指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。
包名为:indi.发起者名.项目名.模块名……

onem :
单人项目(one-man),推荐用indi,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。
包名为:“onem.发起者名.项目名.模块名……”

pers :
个人项目(personal),指个人发起,独自完成,可分享的项目,copyright主要属于个人。
包名为:pers.个人名.项目名.模块名.……

priv :
私有项目(private),指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人。
包名为:priv.个人名.项目名.模块名.……

team:
团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有。
包名为:team.团队名.项目名.模块名.……

com :
公司项目,copyright由项目发起的公司所有。
包名为:com.公司名.项目名.模块名.……

2.导入包

语法:
import 包名.类名
例如:
导入包中全部类:
import java.util.*;
导入包中指定类:
import java.util.List;

3.常用系统包

java.lang 包含java语言基础的类
java.util 包含Java语言中各种工具类
java.io 包含输入、输出相关功能的类

四、静态(static)

1.static组合

a. static+属性——静态属性
b. static+方法——静态方法

c. static+类——不存在
d. static+方法内局部变量——不存在

注意:静态成员随类加载产生,直至类销毁才回收

2.静态方法

a. 可以直接调用同类中的静态成员
b. 不可以直接调用同类中的非静态成员
c. 可以通过实例化对象后,对象调用的方式完成非静态成员调用

本期小结

到这里我们就结束了本期关于封装的学习,本期知识点较为分散,需要自行配合代码习题练习掌握,Java成长之路的专栏将会停更一段时间,接下来老汉将会针对于计算机二级c语言考试进行知识点总结,供各位学习参考,感谢各位观看!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王老汉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值