`
ye_haiqiang
  • 浏览: 88388 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

包和访问控制

    博客分类:
  • J2SE
阅读更多

一、包的创建和使用

包是java程序中关于命名空间的一种手段,它可以有效的解决类重名的问题。当需要把一个类定义在某个包下的时候,需要使用package关键字来进行定义。当需要使用其他包下的类的时候,则需要使用import关键字进行导入。

例如:(package)

package com.ye_haiqiang;
class  PackageTest
{
	public static void main(String[] args) 
	{
		System.out.println("This is Package....");
	}
}

 

通常我们的习惯是直接会这样写:javac PackageTest.java,".class"文件就会生成在当前文件夹下,这时候我们 运行

java PackageTest就会出错,如图:

 

 

因为当某个文件属于某个程序包时,改文件中定义的类也是属于改程序包,在操作系统的命令行中必须使用全名访问这个类,即,java com.ye_haiqiang.PackageTest,但是这样还是会出错,

 

这是因为上述命令在装载类的时候再目录com.ye_haiiqang 下查找PackageTest.class文件,但是文件却是在当前文件下,所以我们要手动的创建文件com/ye_haiqiang,把PackageTest.class文件放在com/ye_haiqiang 文件底下,这时候我们在运行java com.ye_haiqiang.PackageTest 就不会出错了~

 

但是这样比较麻烦,可是使用-d参数运行javac。让她自动建立包对应的子目录,并将生产的".class"放进去....

 

操作如下:

 

 

导入文件包,除在建包上,写上import 报名.类名;如import com.ye_haiqiang.PackageTest,导入包下的所有类,import com.ye_haiqiang.*;

 

这里做一个补充:针对读者的意见我这里做一个比较完善的建包以及包的导入做一完整的例子。

这个例子是做一用户的操作。做一个用户的添加和修改

 

用户类:

package com.ye_haiqiang.entity;
public class User
{
	private String userId;
	private String userName;
	public void setUserId(String userId)
	{
		this.userId=userId;
	}
	public String getUserId()
	{
		return this.userId;
	}
	public void setUserName(String userName)
	{
		this.userName=userName;
	}
	public String getUserName()
	{
		return this.userName;
	}
}

 

用户操作类:

package com.ye_haiqiang.dao;
import com.ye_haiqiang.entity.User;//导入用户
public class UserDao 
{
	public void add(User user)
	{
		System.out.println("add user...");
		System.out.println("userId="+user.getUserId()+" userName="+user.getUserName());
	}
	public void modify(User user)
	{
		System.out.println("modify user...");
		System.out.println("userId="+user.getUserId()+" userName="+user.getUserName());
	}
}

 

操作测试类:

package com.ye_haiqiang.test;
import com.ye_haiqiang.entity.User;//导入用户
import com.ye_haiqiang.dao.UserDao;//导入用户操作
public class  UserDaoTest
{
	public static void main(String[] args) 
	{
		User user=new User();
		user.setUserId("001");
		user.setUserName("zhangsan");
		UserDao dao=new UserDao();
		dao.add(user);
		dao.modify(user);
	}
}

 

这些类都保存在myjava的文件夹里。

 

运行如下:(两种方法)

1、统一运行

2、逐个运行:

 

 

二、访问控制(private、protected、public和default)

public 可以被所有其他类访问。

private 只能被自身访问和修改

protected 自身,子类及同一个包中类可以访问

default:同一个包中的类可以访问,声明是没有加修饰符,认为是friendly(友好)

 

每天一点点,希望对大家有利~

 

分享到:
评论

相关推荐

    eclipse中对包的访问

    在Java编程语言中,包(Package)是一种组织代码的方式,它提供了一种命名空间和访问控制的机制。在Eclipse这样的集成开发环境中,正确管理包的结构对于项目的可维护性和避免命名冲突至关重要。针对"eclipse中对包的...

    中文访问控制文献打包

    《新型网络环境下的访问控制技术.pdf》则可能关注在互联网、移动通信和物联网等快速发展的网络环境中,如何设计和实施有效的访问控制策略,以保护网络安全和数据隐私。 《访问控制模型研究综述.pdf》是这个压缩包的...

    访问控制的基本概念

    访问控制是信息安全领域中的核心概念,它涉及到对信息系统资源的管理和保护,确保只有授权的用户才能访问特定的数据和系统功能。以下将详细阐述访问控制的基本概念: 1. 访问控制的定义:访问控制旨在管理和限制...

    javaSE08类的命名空间和访问权限.ppt

    合理地使用包和访问控制,可以使我们的代码结构更清晰,易于理解和维护,同时增加了代码的安全性。在编写Java程序时,应遵循良好的包命名规范,并恰当地使用访问修饰符,以实现高效且安全的代码设计。

    LabVIEW模块和工具包(控制设计与仿真)

    2. 控制设计和仿真模块:该模块提供了控制理论的实现环境,包括了经典控制策略如PID(比例-积分-微分)控制以及更先进的控制策略,例如状态空间控制、模糊逻辑控制和自适应控制等。工程师可以利用这些工具来设计、...

    包过滤控制访问列表的功能配置 路由器配置

    包过滤控制访问列表的功能配置,包括:组网需求,组网图,配置步骤,配置关键点,代码和命令。对内网地址访问外网做限制,使其无法访问所有WEB界面

    用户访问控制管理规定.doc

    本规定的目的是为了明确用户访问控制的职责权限、内容和方法的央求,特制订本规定。该规定适用于信息安全管理系统中涉及的一切员工,包括构造管理人员、普通员工、第三方员工等。 职责 1. IT 部门:是本规定的归口...

    VC++写的自主访问控制

    11. **权限管理接口(Authorization API)**:如`Advapi32.dll`库中的函数,用于处理权限管理和访问控制。 通过理解并运用这些概念,开发者可以创建一个VC++程序,该程序能够创建、读取、修改和删除文件的安全描述...

    数据库的访问控制.ppt

    综上所述,数据库的访问控制是通过自主访问控制、强制访问控制和基于角色的访问控制等多种策略来确保数据安全,防止未经授权的访问和操作。这些策略结合使用,可以构建出多层次、全方位的安全防护体系,保护数据库中...

    Cisco访问控制列表配置指南

    总的来说,掌握Cisco访问控制列表的配置和应用对于网络管理员来说至关重要。理解其基础、动态和基于时间的特性,能够帮助我们更好地管理和保护网络资源,提升网络安全性。通过深入学习和实践,我们可以灵活应对各种...

    实例8访问控制(java实例系列)

    总结,"实例8访问控制"是一个关于Java访问控制的关键实践案例,通过实际编程加深了对访问控制的理解,帮助开发者掌握如何有效地控制代码的可见性和访问权限,以实现良好的封装性和模块化设计。通过这个实例,我们...

    Java包与文件操作

    在Java编程中,包(Package)是组织和管理类的一种机制,它有助于避免命名冲突,同时提供了一种访问控制的方式。文件操作则是指在磁盘上读取、写入或移动文件,这是程序与外部存储交互的基础。在这个场景中,我们...

    Java4Android 27_包和访问权限(三)

    在Java编程语言中,包(Package)是一种组织类和接口的方式,它提供了命名空间和访问控制的功能。包的使用能够避免命名冲突,并帮助我们更好地管理代码。本篇内容将深入探讨Java中的包和访问权限,这对于我们理解...

    基于Linux的强制访问控制研究.pdf

    1. 强制访问控制信息和访问控制策略:为Linux系统中的主体和客体添加额外的控制信息,并制定强制访问控制策略,作为判断访问权限的依据,这些设计基于BLP模型。 2. 访问控制增强模块:通过LKM(Loadable Kernel ...

    as3.0访问控制符

    ### AS3.0中的访问控制符:public、private、protected和internal 在ActionScript 3.0(简称AS3.0)中,访问控制符是用来限制类、成员变量、方法等元素可见性的关键字。合理使用这些关键字可以帮助开发者更好地管理...

    访问控制课程设计报告

    访问控制是信息安全领域中的核心概念,它涉及到对资源的访问和使用权限的管理。本报告主要探讨了两种访问控制模型:自主访问控制(DAC)和基于角色的访问控制(RBAC),并以此为基础进行了一次课程设计实验。 自主...

    系统访问控制与审计技术.pptx

    在实际应用中,往往结合自主访问控制和强制访问控制,以达到既安全又实用的效果。自主访问控制提供基础的、日常的访问管理,而强制访问控制作为增强的保护层,用于关键信息和资源的保护。 审计技术是访问控制的重要...

    第一行代码Java源代码第5章课程代码包及访问控制权限

    【标题】"第一行代码Java源代码第5章课程代码包及访问控制权限"涉及到的是Java编程中的基础知识,特别是关于代码组织和访问控制的概念。在Java编程中,代码的结构化和封装是至关重要的,这使得程序易于维护、扩展和...

Global site tag (gtag.js) - Google Analytics