概念: 物理上是文件夹;逻辑上是有逻辑关系的类的集合

  作用: 避免类重名;控制访问权限

  命名规范: 在包名中,可以使用.号来区分包的级别;包名一般情况下是小写

        第一级 指该项目的类型,如com,org,gov等,

        第二级 指项目所开发或者运行的公司名称,如:loyer,huawei等

        第三级 指项目的名称,如:corejava,bcms,oa,erp等

        第四级 指项目模块的名称,如:test,action,exception,chapter01等

        例如com.huawei.erp.test

  导入外部包的类:关键字"import" 例如import com.huawei.erp.test

权限访问修饰符

  Java有四个权限访问修饰符,权限从大到小依次为:

    1)public :公共权限 修饰类、属性、方法:可以被任意类访问

    2)protected:受保护的权限 修饰属性、方法:可以被同包类访问,如果不是同包类,必须是该类的子类才可以访问

    3)default:同包权限(默认权限) 修饰类、属性、方法:只能被同包的类访问

    4)private:私有权限 修饰属性、方法:只能在本类中访问

封装性

  概念:封装性是一种信息隐藏技术

  作用:将对象的全部属性和全部方法结合在一起,形成一个不可分割的独立单位;

     对内部的结构可以自由修改、进行更精确的控制;

     封装的对象便于重复调用、尽可能隐藏对象的内部结构;

代码示例

 package summary1;

 import java.util.Scanner;

 /*封装性 Encapsulation 计算两个数的商
*此次封装的作用:计算商时被除数不能为零;所以不能直接赋值,需要加一个判断
*由此封装一个类,里面包含赋值和计算的方法,由此来检查输入值是否合法
*如果输入的除数不等于(!=)0,那么可以顺利通过计算输出结果,如果不满足条件的话,则不予赋值,打印提示语句
*备注:在开发中,类中封装之后的属性需要通过get和set访问
*/
class Test //创建一个测试类来封装里面的方法和属性
{
protected double m; //受保护的权限访问修饰
protected double n; //可以被同包类访问,如果不是同包类,必须是该类的子类才可以访问
public double getM(int i) //方法返回值是double双精度型
{
return this.m = i; //this引用本类的属性m、将传入的除数i的给其值赋
}
public void getN(int j) //方法返回值是void默认空
{
if(j != 0) //判断被除数的值是否为0
{ //如果不等于0
this.n = j; //this引用本类的属性n、将传入的被除数i的给其值赋
double sum = this.m/this.n; //计算m/n的商
System.out.println("商="+sum); //打印输出结果
}
else //否则:如果被除数j==0;
{
System.out.println("除数不能为0"); //不予赋值
}
}
}
public class Encapsulation
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in); //实例化Scanner类获取控制台输入
Test t = new Test(); //创建对象
System.out.println("除数:"); //打印提示输入除数值
t.getM(sc.nextInt()); //调用方法传参(控制台输入的除数)
System.out.println("被除数"); //打印提示输入被除数值
t.getN(sc.nextInt()); //调用方法传参(控制台输入的被除数)、并且计算结果
}
}

Java包、权限访问修饰符、封装性的更多相关文章

  1. JAVA 中的权限访问修饰符(public,protected,default,private )

    JAVA中有四个权限访问修饰符:public,protected,default,private 注意:这里讲的是对类中属性和方法的访问权限,并不是类的访问权限 1.default:包访问权限 如果什 ...

  2. 分享知识-快乐自己:java 中的访问修饰符

    1):Java中的访问修饰符: Java面向对象的基本思想之一是封装细节并且公开接口.Java语言采用访问控制修饰符来控制类及类的方法和变量的访问权限,从而向使用者暴露接口,但隐藏实现细节. 访问控制 ...

  3. JAVA_SE基础——59.权限访问修饰符

    了解了包的概念,就可以系统的介绍Java中的访问控制级别.在Java中,针对类.成员方法和属性提供了四种访问级别,分别是private.default.protected和public. 权限访问修饰 ...

  4. Java基础——protected访问修饰符探讨

    Java基础——protected访问修饰符探讨 根据官方说法:(如图) protected修饰符是可以修饰其他包中的子孙类的,但是我做了个实验,结果发现了一个有趣的现象! 具体请往下看: packa ...

  5. java的访问控制(包、访问修饰符、修饰符)

    一.     java的类包 编写好一个源程序后,首先要执行javac命令进行编译源文件,并生成与源文件同名后缀为“.class”的字节码文件(类文件),该类文件与源文件默认在同一个目录中.该类文件是 ...

  6. JAVA中的访问修饰符和包

    一.JAVA访问修饰符 访问修饰符,用来控制类中成员的可见性 有四个访问修饰符,分别是:default,private,public,protected 1.default(默认):默认权限,不用写的 ...

  7. java四种访问修饰符及各自的权限

    1.public,即共有的,是访问权限限制最宽的修饰符.被public修饰的类.属性.及方法不仅可以跨类访问,而且可以跨包访问. 2. protected,即保护访问权限,是介于public和priv ...

  8. java中的访问修饰符

    Java有四种访问权限,其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符.其中package代表缺省的访问权限,具体到代码中就是不写任何修饰符的 ...

  9. Java继承和访问修饰符

    继承 概念:为了提取两个类中公共代码,可以使用继承抽取重复性的代码到一个公共类中,这个公共的类称为父类(super class).继承于父类的类称为子类(sub class). 关键字     ext ...

随机推荐

  1. MongoDb进阶实践之八 MongoDB的聚合初探

    一.引言 好久没有写东西了,MongoDB系列的文章也丢下好长时间了.今天终于有时间了,就写了一篇有关聚合的文章.一说到“聚合”,用过关系型数据库的人都应该知道它是一个什么东西.关系型数据库有“聚合” ...

  2. DOM-动态操作心得

    这个知识点都是之前看过的,就当是复习了 一.创建元素的三种方法 第一种:  document.write() 识别标签 但会覆盖之前内容 第二种:  用元素自身的innerHTML方法 不识别标签 但 ...

  3. url中含有%

    Server.UrlEncode(“参数”)也可以使用javascript 的编码方式href="页面?name=encodeURI("参数")传送页代码编码 接收页代码 ...

  4. 解决Address is in use:Windows和Linux通过杀死进程

    在开发无卡支付系统的过程中,因为用了端口来监听服务,在调试程序的时候,忘了关,再次运行的时候会出现Address is in use的问题,即端口已经被绑定,无法再次使用,最直观的方法就是杀死之前的进 ...

  5. cent 7 安装VNC

    1. yum install tigervnc-server; 2.cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncs ...

  6. MySQL连接、登录、密码等

    官方教程:https://dev.mysql.com/doc/refman/8.0/en/ 链接数据库,通过指定 -h 参数可以连接网络上的数据库 mysql -u 用户名 -h 服务器IP -P 端 ...

  7. ros 编程习惯

    1.设置ros的info,warning,debug,error等编写的时候要思考,何时该使用,以及在开头要使用设置rosconsole的级别来对应输出,以方便调试. 2.在使用ros_info等的时 ...

  8. java面试感悟【一】

    我最终选择不包装工作经验,或许是因为我怂,或许是因为一些莫名其妙的坚持…… 然而结果就是在boss上沟通了20多家,只有7家让我投了简历,1家跟我说要我发个时间段给他稍后告诉我面试时间,然后就没有然后 ...

  9. Elastix GOIP 网关配合

    方案一 Gateway disallow=allallow=alaw&ulawcanreinvite=nodtmfmode=rfc2833host=192.168.1.108insecure= ...

  10. Hibernate学习笔记:注解@OneToMany和@ManyToOne的单独使用问题 不成对使用

    以某个实际场景为例,现在两张表:用户表User 订单表Order:很显然用户对订单是一对多的关系.二者注解如下 用户表User @Entity @Table(name="users" ...