- 浏览: 233715 次
文章分类
- 全部博客 (160)
- java语言基础 (67)
- jsp基础 (2)
- eclipse使用 (2)
- java源码解读 (6)
- 计算机基础 (3)
- eclipse插件 (0)
- 网络基础 (8)
- 算法 (2)
- linux (0)
- 英语 (0)
- C语言 (4)
- JavaScript (17)
- 数学 (0)
- struts2 (2)
- 自然哲学 (0)
- Servlet (1)
- HttpServer (2)
- ext (1)
- 个人 (1)
- dojo (27)
- spring (2)
- hibernate (4)
- css (3)
- 多线程 (0)
- chrome插件开发 (0)
- svn (0)
- thrift (2)
- phonegap (1)
- java线程 (1)
- 不是很熟悉的css属性 (0)
- 数据库性能调优 (0)
- 项目管理 (1)
- ios (0)
- 软件工程 (0)
- db2 (0)
- 词汇管理 (0)
- zhenyan (0)
- 计划 (0)
- android (0)
- ssss (0)
- 是的 (0)
- dsada (0)
- 泛点是 (0)
- fds (0)
- cxzc (0)
- 权限 (0)
- dfsfds (0)
- http://www.cnblogs.com/kingboy2008/p/5261771.html (0)
- sss (0)
- ddd (0)
- fdsfdsf (0)
- sso (0)
- nginx (0)
- 分布式数据一致性 (0)
- mysql (0)
- ios永久存储 (0)
- js匿名函数 (0)
- 打印机qqq (0)
最新评论
在编写Java类或接口时,要考虑使用哪种修饰符,有public和和包级私有修饰符号,经验表明,应该使类的可访问能力最小化。看下面的例子:
/** * 栈的接口 * */ public interface MyStack { /** * 获取栈中数据的个数 * */ int size(); /** * 测试栈是否为空 * 若栈空,返回true,否则false */ boolean isEmpty(); /** * 向栈顶部压入元素o * */ void push(Object o); /** * 弹出栈顶部元素 * 若栈空,抛出EmptyStackException异常 */ Object pop() throws EmptyStackException; /** * 获取栈顶部元素 * 若栈空,返回null */ Object getTop(); }
class MyStackImpl implements MyStack { private Object[] elements; private int size = 0; public MyStackImpl(int initialCapacity) { this.elements = new Object[initialCapacity]; } public void push(Object e) { ensureCapacity(); elements[size++] = e; } public Object pop() { if (size == 0) throw new EmptyStackException(); Object result = elements[--size]; elements[size] = null; return result; } public boolean isEmpty() { return (size == 0 ? true : false); } public Object getTop() { if (size == 0) return null; return elements[size - 1]; } public int size() { return size - 1; } public String toString() { StringBuffer b = new StringBuffer(); for (int i = 0; i < size; i++) { b.append(elements[i] + " "); } String s = new String(b); return "[" + s + "]"; } private void ensureCapacity() { if (elements.length == size) { Object[] oldElements = elements; elements = new Object[2 * elements.length + 1]; System.arraycopy(oldElements, 0, elements, 0, size); } } }
这里MyStack和MyStackImpl是在同一个包中的,可以看到MyStack是用public修饰的,而MyStackImpl则是包级私有的。这样做是有好处的,如果一个包是一个模块,那么对外只要显示public类和接口就可以了,而包级私有的类就相当于包的实现,在以后的发行版本中,你可以修改,替换(比如我现在的MyStackImpl,哪天觉得那个实现不够好,可以对它进行修改,而不会影响到客户的代码)。
发表评论
-
mysql并发
2013-01-08 13:38 0/** * 测试msql JDBC连接并发安全性 ... -
java注解2
2013-01-06 22:02 1021由前一篇的代码,运行代码如下:public clas ... -
java注解1
2013-01-06 21:56 948本文演示java注解的使用 1. getDe ... -
Java集合框架分析
2012-08-29 21:28 01. Java集合整体框架 下面的两张图说明 ... -
AbstractList
2012-08-29 20:48 980public abstract class Abstra ... -
Set
2012-08-28 11:17 683public interface Set<E> e ... -
List源码
2012-08-28 11:15 1011public interface List<E&g ... -
Collection源码
2012-08-28 11:13 949public interface Collection< ... -
java集合框架
2012-08-28 10:39 0java的集合框架中,主要有3类常用的集合。 -
web的debug
2012-03-29 10:48 0hh -
文件读取
2012-03-10 19:32 0public class Util { publ ... -
HTML元素的访问
2011-11-30 09:31 0有3忠方法可以访问html中的元素。 -
Schema数据类型
2011-11-26 16:34 0Schema不仅内置了丰富的数据类型,而且还允许开发者 ... -
初学XML3
2011-11-26 10:08 0编写了XML Schema语义约束之后,必须将其导入目 ... -
初学XML2
2011-11-26 09:22 821<?xml version="1.0& ... -
初学XML
2011-11-26 08:50 890<?xml version="1.0&q ... -
JavaScript字符串
2011-11-19 21:29 921JavaScript有三种基本数据类型,字符串,数字以 ... -
项目管理
2011-11-05 22:39 0项目管理开始于项目计划阶段,贯穿于整个系统开发生命周期 ... -
项目可行性分析
2011-11-05 21:23 0项目可行性包括三个方面:技术可行性,经济可行性,组织 ... -
系统开发生命周期
2011-11-05 21:16 0系统开发生命周期有四个4个基本阶段: 计划- ...
相关推荐
### 理解Java中的类的各种权限修饰符 在Java编程语言中,权限修饰符用于控制类、方法、变量等成员的访问级别。这有助于提高代码的安全性和封装性。本文将详细探讨Java中的五种权限修饰符:`public`、`protected`、`...
Java 访问修饰符是 Java 编程语言中的一种重要机制,它控制着类、方法和变量的访问权限。访问修饰符可以分为四种:public、protected、private 和缺省(无访问修饰符)。 public 访问修饰符 public 访问修饰符是最...
Java 修饰符可以分为两大类:访问修饰符和非访问修饰符。访问修饰符包括 public、protected、default 和 private 四种,用于控制类、成员变量和方法的访问权限。非访问修饰符包括 final、static 和 abstract 三种,...
Java语言中的类修饰符和访问控制符是编程中至关重要的概念,它们决定了代码的组织结构、访问权限和封装性。本实验旨在深入理解和熟练运用这些关键特性。 首先,Java类修饰符包括`public`, `private`, `protected`...
根据 JAVA 访问修饰符的特性和使用范围,我们可以将其分为三类:修饰符类的访问修饰符、属性的访问修饰符和方法的修饰符。 一、修饰符类的访问修饰符 修饰符类的访问修飾符共有四种:默认、public、abstract 和...
以下是对标题和描述中提及的Java修饰符及其相关知识点的详细介绍: 1. 类的访问控制修饰符: - **public**:公共访问修饰符,允许任何地方的代码访问该类或成员。这意味着类或方法可以在任何包中被调用。 - **...
Java修饰符是编程中至关重要的概念,它们用于定义类、接口、变量和方法的访问权限、行为和特性。本文将详细介绍Java中常见的修饰符及其用途。 1. **类的修饰符** - **public**: 公共访问控制符,允许任何地方的...
这些修饰符用于定义类、接口、变量和方法的可访问性,是理解Java面向对象特性的重要组成部分。让我们深入探讨这三个修饰符的含义和用法。 1. `public`: `public`是最宽松的访问控制修饰符,表示没有任何限制,...
在 Java 语言中,访问权限修饰符是指用来限定类、成员变量和方法的可访问范围的关键字。访问权限修饰符分为四种:public、protected、friendly 和 private。每种修饰符都有其特定的访问权限和使用场景。 一、public...
Java修饰符主要分为两大类:访问控制符和非访问控制符。其中,访问控制符用于控制类、方法和变量的可访问性范围,而非访问控制符则用于提供额外的功能,如抽象、静态、同步等。 #### 访问控制符 访问控制符包括`...
Java 中的访问修饰符可以分为三大类:类的访问修饰符、属性的访问修饰符和方法的访问修饰符。每种修饰符都有其特定的访问权限和用途。 类的访问修饰符 Java 中有四种类的访问修饰符: 1. 缺省(friendly):同一...
Java语言中的修饰符是编程语法中的重要组成部分,它们用于定义类、接口、变量和方法的特性,从而控制访问权限、实现抽象概念、确保不可变性以及优化代码结构。本章将详细阐述Java中的主要修饰符。 首先,我们讨论...
### Java修饰符详解 在Java编程中,修饰符(Modifiers)扮演着至关重要的角色,它们用于控制类、方法、变量等元素的可见性和行为。Java提供了两种主要类型的修饰符:访问控制修饰符和非访问控制修饰符。本文将深入...
Java语言中的修饰符是编程中不可或缺的部分,它们用于指定类、接口、方法和变量的访问权限及特性。本文主要分析了Java中常见的访问修饰符(public、private、protected、friendly/default)以及非访问修饰符(final...
本文将深入探讨Java修饰符的基础知识,包括访问修饰符、非访问修饰符以及它们在实际编程中的应用。 首先,我们来看访问修饰符。在Java中,有四种主要的访问修饰符: 1. **public**:公共访问修饰符,允许任何地方...
从给定的文件信息来看,我们深入探讨了Java语言中重要的修饰符概念,...总之,Java修饰符是掌握面向对象编程和有效利用类、方法、属性的关键。理解每种修饰符的作用和适用场景对于编写高质量、易于维护的代码至关重要。
Java 中的类和方法的修饰符是 Java 语言的基础知识之一。Java 程序在定义类时,除了使用 class 关键字标识之外,还可以在 class 之前增加若干类的修饰符来修饰限定所定义的类的特性。类的修饰符分为访问控制符和非...
Java修饰符总结[汇编].pdf
Java修饰符详细解析 Java语言中,修饰符(Modifier)是一...Java修饰符是Java语言中一个非常重要的概念,它们决定了类、方法、变量的访问权限和行为。只有正确地使用修饰符,才能写出结构清晰、可维护性强的Java程序。