java的封装】的更多相关文章

Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:private,默认,protected,public来实现.(这四个权限访问控制符的区别网上有很多,建议读者自行搜索学习,切记要亲自练习一下!)最明显的实现就是把类的成员变量私有(private),只能通过类的成员函数来进行访问,并且此时的成员函数公有(public).这就是著名的setter/getter…
package com.cnblogs.java; //体验Java的封装性 /* * 如下的人类年龄赋值-300岁,显然很不合理,这种直接对类的属性赋值,有时候虽然不合理但却会编译通过. * 所以我们考虑不让对象直接操作属性,而是通过对象调用方法来对属性赋值,在方法中我们就可以进一步限制 * 赋值的大小问题. * 解决办法:将类的属性私有化,通过共有的方法来调用修改类的属性.(在方法中限制修改的值) */ public class TestPerson { public static void…
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. 封装后的JSON工具类JSONUtils.java代码如下: JSONUtils代码,点击展开 import java.util.ArrayList;import java.util.Collection;import java.util.HashMap;import java.util.Itera…
Java10-java语法基础(九)——java的封装性 一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可信的类或者对象进行信息隐藏. 继承:继承是从已有的类中派生出新的类,新的类能吸收已有类的数据成员和方法,并能扩展新的能力. 多态:多态性是指不同的对象,收到同一消息可以产生不同的结果. 二.面向对象编程的封装性 封装的实现:通过private关键字实现 1.封装数据成员和成员方法 (1)封装数据成员…
转载: Java异常封装 Java里面的异常在真正工作中使用还是十分普遍的.什么时候该抛出什么异常,这个是必须知道的. 当然真正工作里面主动抛出的异常都是经过分装过的,自己可以定义错误码和异常描述. 在给出异常分装例子之前,需要给大家普及Java里面的checked异常和unchecked异常的个概念. 一.checked异常和unchecked异常 这里之所以让大家清楚checked异常和unchecked异常概念,是因为:待会我们的异常是继承unchecked异常RuntimeExcepti…
目录 Java之封装与访问权限控制(二) 包:库单元 import import static Java常用包 Java之封装与访问权限控制(二) 访问权限控制是具体实现的隐藏,是封装性的一部分体现.前面提到几个访问控制修饰符,是访问权限控制的一部分.接下来要探讨这块另一个重要的概念,包(package). 包:库单元 包解决了什么问题? Java作为面向对象程序设计语言,"高内聚,低耦合"是设计的目标.既然这样,如何能做到高内聚,如何有效管理这些内聚的构件,包就是充当这一角色.包机制…
目录 Java之封装与访问权限控制(一) 封装的概念 访问控制符 属性私有化 Java之封装与访问权限控制(一) 对于封装的概念,我总觉得自己还是挺了解的,但是真要我说,还真说不出个啥来.我只能默默地通过身边的例子加上书本理论完善我对封装的认识. 就比如,我们在玩游戏的时候,我们只能通过完成指定任务获得金币,并不能直接修改金币的值,作为玩家的我们,如果轻易就能修改机密,那岂不是乱套啦.设计者明显不想让我们这么做,他们允许我们享受游戏,但是这些禁忌碰不得.这就是封装的一个例子. 封装的概念 封装是…
### 一:封装java中封装是指一种将抽象性函式接口的实现细节部分包装.隐藏起来的方法. 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问.要访问该类的代码和数据,必须通过严格的接口控制.封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段.适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性.***封装的优点***    1  良好的封装能够减少耦合.    2 类内部的结构可以自由修改.     3 可以对成员变量进行更精…
一.checked异常和unchecked异常 checked异常: unchecked异常: 二.异常封装示例 2.1.添加一个枚举LuoErrorCode.java如下: 2.2.创建一个异常类BusinessException.java,继承RuntimeException: 2.3.测试类ExceptionTest.java: 一.checked异常和unchecked异常 checked异常: 表示无效,不是程序中可以预测的.比如无效的用户输入,文件不存在,网络或者数据库链接错误.这些…
package org.scbit.lsbi.scp.utils; import java.util.ArrayList; import java.util.List; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.scbit.lsbi.scp.utils.enums.Templ…
封装: 封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度. 适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性. 访问修饰符有public,private,protected,默认四种. 通过private将类封装起来,防止被随意更改,通过写public的get,set方法让别人调用. 继承: 关键词:extends. 可以把父类中的相关内容直接继承到子类,子类就不需要再重新定义.private中的无法被继承:public,protected可以被继承:默认的…
代码封装: 在这个java程序内调用另一个类 在arrayTool中把这两个函数封装起来. 编译顺序:(由下文可知应该是先进行语法检查再进行编译) 先编译ArrayTool再编译ArrayOperatorDemo 因为编译ArrayOperatorDemo文件时会进行语法检查,检查到第九行,会在classPath下面去找是否存在ArrayTool.class文件,如果没有配置classPath会在当前文件目录下找 该类是否存在.如果两个都没有,虚拟机还会去这两个路径下去寻找是否还有同名的原文件.…
封装就是把不想或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开. 做法:修改属性的访问权限来限制对属性的访问,并为每一个属性创建一对取值和赋值的方法,用于对这些属性的访问 通过封装,可以在给属性赋值的时候判断值是否合法,增加安全性. private 私有的 public 公有的 代码: W.java public class W{ private String name; //私有属性 public int age; //公有属性 //公有方法,此方法目的是给外类为本类中的私有属性实现赋值操…
1.封装,即保留有限的外部接口(interface),隐藏具体实施细节. 2.封装在生活中很常见.比如下面是一个充电电筒: 一个用户即使不看说明书,也可以猜到这个电筒的操作: 开关和充电.这个电筒用一个塑料壳将用户不需要接触的内部细节隐藏起来,只保留了两个接口,开关和电插头.使用这两个接口,用户足以使用该产品在设计中想要实现的功能.如果所有的细节都同时暴露给用户,那么用户会对产品感到不知所措 (比如下面不加壳的遥控器).因此,封装提高了产品的易用性. 如果产品不封装,电筒或者遥控器的许多细节会暴…
.什么是封装? 封装就是将属性私有化,提供公有的方法访问私有属性. 做法就是:修改属性的可见性来限制对属性的访问,并为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问. 如:private String name; public String getName(){ return; } public void setName(String name){ this.name=name; } 2.  为什么需要封装? 通过封装,可以实现对属性的数据访问限制,同时…
1.什么是memcached?(从官网翻译翻译) 免费和开源.高性能.分布式内存对象缓存系统,通用在自然界,但用于加速动态web应用程序,减轻数据库负载. Memcached是一个内存中的键值存储为小块的任意数据(字符串.对象)从数据库调用的结果,API调用,或者页面呈现. Memcached是简单而强大.它的简单的设计促进快速部署.易于开发和解决许多问题面临大数据缓存.其API用于最流行的语言. Author:文初 Email: wenchu.cenwc@alibaba-inc.com Blo…
接下来几天会根据http://www.cnblogs.com/chenssy/category/525010.html中讲解的java内容做个学习笔记,在此感谢一下这位大仙!! 一.封装 对于封装而言,一个对象它所封装的是自己的属性和方法,所以它是不需要依赖其他对象就可以完成自己的操作. 使用封装有三大好处: 1.良好的封装能够减少耦合. 2.类内部的结构可以自由修改. 3.可以对成员进行更精确的控制. 4.隐藏信息,实现细节. 二.继承 继承定义了类如何相互关联,共享特性.对于若干个相同或者相…
最近在做一个远程控制的模块,其中用到了telnet协议,开始用的是apache-net包的telnetclient,但发现问题不少,比较慢,还有就是判断是否read完毕的问题.后来经过讨论打算实现自己的telnet,于是网址打罗了一番,找了一个,但是bug也不少,就开始封装.具体的telnet我已经发过2篇文章了,这里再发布一个深化封装的telnet实现. 仅供参考,可以在windows和linux上运行. package baby.net.base; import java.io.IOExce…
最近学习Java面向对象方面的知识点,一直没时间更新博客,因为这块的知识点真的蛮绕的.一个知识点一个知识点的往外冒,而且对于我这个初学者来说区分构造器和方法就花费了一整天的时间.现在准备再重新过一遍知识点. 先背下来一个理念: 面向对象程序设计是将数据放在第一位的,然后再考虑操作数据的方法. 之前,再学习Java的优越性的时候,我们知道了Java是一种面向对象设计的程序设计语言.那到底什么是面向对象程序设计呢?要弄懂它,首先我们简单了解一下另一种程序设计. 一.面向过程程序设计: 面向过程程序设…
封 装(面向对象特征之一):是指隐藏对象的属性和实现细节,仅对外提供公共访问方式. 好处:将变化隔离:便于使用:提高重用性:安全性. 封装原则:将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共方法对其访问. this:代表对象.就是所在函数所属对象的引用. this到底代表什么呢?哪个对象调用了this所在的函数,this就代表哪个对象,就是哪个对象的引用. 开发时,什么时候使用this呢? 在定义功能时,如果该功能内部使用到了调用该功能的对象,这时就用this来表示这个对象. this…
Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的,访问控制分为4个等级:私有.默认.保护和公有,具体规则如下表: 1.私有级别 私有级别的关键字是private,私有级别的成员变量和方法只能在其所在类的内部自由使用,在其他的类中则不允许直接访问.私有级别限制性最高.示例代码如下: // PrivateClass.java文件 public class PrivateClass { private int x; public PrivateClass() { x = 100; }…
真正工作了才发现,Java里面的异常在真正工作中使用还是十分普遍的.什么时候该抛出什么异常,这个是必须知道的. 当然真正工作里面主动抛出的异常都是经过分装过的,自己可以定义错误码和异常描述. 下面小宝鸽就为大家介绍一个Java异常简单封装的例子. 在给出异常分装例子之前,需要给大家普及Java里面的checked异常和unchecked异常的个概念. 一.checked异常和unchecked异常 这里之所以让大家清楚checked异常和unchecked异常概念,是因为:待会我们的异常是继承u…
//Java面对对象基本特性之一:封装性 //作用:保护某些属性和方法不被外部所看见 //封装的实现:通过关键字private声明 //鼠标右键--->Source---->Generate Getters and setters自动获取get和set方法 class Person{ private int age ; private String name ; //实现get方法 public int getAge(){ return age ; } //实现set方法 public voi…
模仿DBUtils里面的一些用法,下面是一些简单的实现数据集的操作的方法 下面使用到的两个bean.首先是userbean package bean; public class user { String username; String password; public user(){ username=null; password=null; } @Override public String toString() { return "user [username=" + user…
在上一篇中,我们对第一个自动化接口测试用例做了初步优化和断言,这一篇我们处理POST请求. 4.1 发送POST方法请求 post方法和get方法是我们在做接口测试时,绝大部分场景下要应对的主要方法. 在发送请求时他们显著的一个差别就在于,get方法我们只需要组在url内发送即可,post我们还需发送一个请求主体. 4.1.1 修改restfulClient实现发送POST请求 //通过httpclient获取post请求的反馈 public void sendPost(String url,…
maven依赖关系: <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifac…
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. 封装后的JSON工具类JSONUtils.java代码如下: package com.hu; import java.util.ArrayList;import java.util.Collection;import java.util.HashMap;import java.util.Iterat…
前言: 由于刚转java项目,所以对于java语言比较陌生,尤其是lambda和一些诸如(一个java文件只能有一个public class)等等的零散知识点之类... 使我觉得就语言的层级来说..net真的超越java不是一星半点.奈何.net跨平台晚,社区力量也小. 相交枚举而言.真的没有 .net中给枚举添加attrbuite来的方便..net枚举:http://blog.csdn.net/hanjun0612/article/details/70807664 由于公司需要多语言,所以枚举…
之前在项目中用到mybtis操作数据库时都是手动写sql,对于我这种sql水平不是很好地人来说痛苦死了:动态查询的sql我表示到现在还不会写呀! 还好,利用数据库表反向生成的工具可以帮我解决大部分的sql;(mybatis generator 你懂的) 首先利用反向生成可以帮我们自动生成实体类,dao接口,dao映射文件: 在dao映射文件如下所示: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE…
本文章介绍了关于Java中的面向对象封装.抽象.继承.多态特点 Java面向对象主要有四大特性:封装.抽象.继承和多态. 一.封装 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的总体,也就是将数据与操作数据的源码进行有机的结合,形成"类",当中数据和函数都是类的成员. 在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,当中包括属性和行为(在Java中就是方法).就好像人类,能够具有name,sex,age等属性,同一时候也具有eat(),sl…