`

类的封装性

 
阅读更多

类的封装其实就是封装其属性和方法,然后通过get、set方法去访问类内部。

封装属性:private 属性类型 属性名

封装方法:private 方法返回类型 方法名称(参数)

举例:

未封装时,可以通过对象直接去调用属性或方法

class Person {
	String name;
	int age;
	public void talk() {
		System.out.println("我是:" + name + ",今年:" + age + "岁");
	}
}

public class TestPerson {
	public static void main(String[] args) {
		// 声明并实例化一Person对象p
		Person p = new Person();
		p.name = "23123";
		p.age = -22;
		p.talk();
	}
}

无法控制属性值的合法性 

 

封装后,因为属性类型限制只能通过get、set方法访问属性或方法

public class Person {
	private String name;
	private int age;
	public void talk() {
		System.out.println("我是:" + name + ",今年:" + age + "岁");
	}

	public void setName(String str) {
		name = str;
	}

	public void setAge(int a) {
		if (a > 0)
			age = a;
	}

	public String getName() {
		return name;
	}

	public int getAge() {
		return age;
	}
}

class TestPerson {
	public static void main(String[] args) {
		// 声明并实例化一Person对象p
		Person p = new Person();
		// 给p中的属性赋值
		p.setName("张三");
		// 在这里将p对象中的年龄赋值为-25岁
		p.setAge(-25);
		// 调用Person类中的talk()方法
		p.talk();
	}
}

 

 

分享到:
评论

相关推荐

    java 类和对象封装性

    总结起来,Java 中的类和对象封装性是通过类来描述一组具有相同特性和行为的对象,并通过访问控制和方法封装来保护对象的内部状态,提供对外的接口。理解并掌握这一概念对于深入学习Java编程至关重要。

    各种封装类型图.doc

    封装技术在电子行业中起着至关重要的作用,它不仅保护内部集成电路(IC),还负责提供电气连接,确保设备的稳定性和可靠性。以下是一些常见的IC封装类型及其特点: 1. **Ball Grid Array (BGA)**: 包括BGABall Grid...

    易语言锐浪类封装易语言锐浪类封装

    总的来说,“易语言锐浪类封装”作为一种编程技术,为易语言用户提供了与锐浪库无缝集成的途径,极大地简化了图形界面开发的复杂性。通过这一封装技术,易语言开发者能够更高效、便捷地利用锐浪库进行GUI开发,同时...

    RabbitMQ工具类封装实现

    本篇文章将重点讲解如何进行RabbitMQ的工具类封装,以及在Android环境下的使用。 首先,`MQSubscribeService.java`代表的是订阅者服务,它是接收和处理来自RabbitMQ的消息的组件。在封装订阅者线程时,通常会包括...

    php完美pdo类封装

    PDO类封装可能提供开始事务(`beginTransaction()`), 提交事务(`commit()`)和回滚事务(`rollback()`)的方法,确保一组操作要么全部成功,要么全部失败,保持数据一致性。 5. **配置管理**:`Conf`文件可能存储了...

    Java实验2 类的封装性和继承性设计实验.doc

    "Java实验2 类的封装性和继承性设计实验" Java 是一种面向对象的编程语言,具有封装性、继承性和多态性三个基本概念。封装性是指将数据和操作数据的方法封装在一个单元中,使得数据和方法的耦合性降低。继承性是指...

    C++类封装实习

    类封装的主要目标是实现数据的安全性和代码的模块化,使得程序更加易于理解和维护。 在"类封装实习"中,你可能会学习如何定义和使用自定义的C++类来处理图形的面积计算。首先,我们需要创建一个基础的`Shape`类,它...

    Excel导出类封装

    在IT行业中,Excel由于其强大的数据处理和...总之,Excel导出类封装是提高代码可维护性和减少重复工作的重要手段。通过合理的封装,我们可以在多个项目中复用相同的导出逻辑,同时降低学习和使用成本,提高开发效率。

    java常用工具类封装

    "java常用工具类封装"是指将常见的功能如线程管理、数据解析、第三方库集成等进行封装,以提高代码的可重用性和可维护性。下面我们将深入探讨这些知识点: 1. **线程池**: Java中的线程池是由`java.util....

    VC++ 封装的Ado操作类

    总的来说,VC++中的Ado操作类封装是对Ado原生接口的抽象和简化,它降低了数据库操作的复杂性,提高了代码的可读性和可维护性。通过理解和利用这类封装,开发者可以更高效地进行数据库应用程序的开发。

    封装串口类VC++

    总之,"封装串口类VC++"是一个实用的编程实践,它简化了串口通信的代码编写,提高了代码的可维护性。通过深入理解串口通信的原理,结合`CommCtrl.cpp`和`CommCtrl.h`中的实现,开发者可以更好地运用串口类进行实际...

    C++类封装设计继承

    类封装设计是面向对象编程的基本原则,它允许我们将数据和操作数据的方法捆绑在一起,形成一个独立的单元,以提高代码的安全性和可维护性。 类的封装通过访问修饰符来实现,如public、private和protected。public...

    线程封装类

    封装好的线程类可以帮助开发者更方便地控制线程的生命周期,减少代码中的错误,并提高代码的可读性和可维护性。在实际项目中,这样的封装往往结合具体的业务需求,提供更高级别的接口,如异步任务队列、定时器线程等...

    USB HID通讯类封装

    USB HID(Human Interface Device)通讯类封装是一种在嵌入式系统、个人计算机和其他支持USB设备之间进行通信的技术。HIDAPI(Human Interface Device Application Programming Interface)是用于与HID设备交互的...

    解析Java中的封装性.pdf

    3. 使用接口:通过接口定义类的公共方法,确保外部代码只能通过接口来与对象交互,进一步增强了封装性。 四、封装性的优点 封装作为面向对象编程的基本原则,其优点显而易见,它不仅提升了软件的品质,也促进了...

    封装性-综合课程案例源码

    这两种方式都可以帮助我们在设计时保持良好的封装性,降低类之间的耦合度。 文件列表中的“task”可能包含一系列的练习或项目,每个任务都可能涉及封装性的具体应用。通过分析和实现这些任务,你可以加深对封装性...

    Sqlite3 C++ 简单单例数据库操作类封装

    总结来说,"Sqlite3 C++ 简单单例数据库操作类封装"是一个实现C++与SQLite3数据库交互的工具,通过单例模式保证了数据库连接的唯一性和高效性。这种封装简化了对SQLite3的使用,让开发者能够更专注于业务逻辑,而...

    共享内存操作类封装,带源码

    2. **类封装**:为了简化编程,将共享内存的创建、映射、读写等操作封装在一个类中,这样用户可以直接调用类的方法,无需关心底层的系统调用和细节,提高了代码的可读性和可维护性。 3. **令牌访问机制**:在并发...

    JAVA_封装性例子

    一个详细讲解JAVA_封装性的例子 希望可以帮助到你。

    Windows串口编程 类封装 例子

    本文将详细讲解Windows串口编程的概念、类封装的重要性以及一个实际的例子。 串口通信允许计算机与其他设备通过串行接口进行数据交换。在Windows环境下,通常使用微软提供的`MSComm`控件或`WinAPI`函数来实现串口...

Global site tag (gtag.js) - Google Analytics