`
evget
  • 浏览: 141345 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
文章分类
社区版块
存档分类

Java的声明和访问控制的应用技巧

阅读更多
文章关键字:|Java|声明|访问|控制|权限|接口|数组|枚举|重载|规则|

  类的声明:

  1、类本身的声明:

  对类的声明来说,主要包括类的访问权限声明和非访问修饰符的使用。对于一个普通的Java类(POJO)来说,主要的访问权限修饰符只有两个public和默认权限,内部类可以有private权限。非访问修饰符主要包括abstract,final和strictfp.

  (1)这里先讨论非访问修饰符,下面是基本的规则:

abstract:声明一个类是抽象的。
final:声明一个类是可以被继承的。
strictfp:声明一个类中所有的方法在处理浮点数时遵循IEEE754规则。
  由上面的这些规则可以得出一个结论:一个类不可能既声明为abstract的,又声明为final的。

  抽象类的实质即为继承它的类定义了一组行为准则,任何继承它的类都必须实现抽象类所定义的抽象方法,抽象类不可以实例化,抽象类中可以不包含抽象方法,但是含有抽象方法的类一定要声明为抽象类。

  final类表示一个类似不能被继承的。如果你不希望一个类的行为被改变,或者说该类的行为是整个系统的基础,就跟数学中的数字一样的话,就可以把这个类声明为final的。

  (2)类的访问权限修饰符:

  首先需要弄清楚的是类的访问包括哪些方面:

一个类中创建另一个类的实例;
一个类继承自另一个类;
一个类中的方法访问另一个类的方法和变量。
  类的访问权限声明为public的,表示该类可以被任意的类访问,当然,在其他类中访问该类时,还是要在源文件的头部做相应的import工作。

  类的访问权限为默认权限,则表示和该类处在同一个包下的类可以访问它 ,此处注意以下比较容易忽视的地方:

  源文件一:

  package cert;

  class test1 {}

  源文件二:

  package cert2;

  import cert.test1;

  public class test2 extends test1{}

  这里test2类会产生错误,因为test1是默认访问权限,test2 使用继承的方式访问test1,由于这两个类不在同一个包中,因此test2是无法看到test1 的。

  2、类的成员访问权限声明

  (1)访问权限的声明:

  类的成员可以使用全部的四种访问权限:public ,protected,默认,private。

  这里需要记住的第一条准则就是:判断类的成员的访问权限,必须先判断类的访问权限,如果整个类对于另一类来说都是不可见的,那么这个类的所有成员都是不可见的。

  类的成员的访问权限,当涉及到子类时会变得很复杂,这里首先要弄清楚两种访问的区别:

一个类的方法的代码是否能够访问另一个类的成员(即:通过在一个类中创建另一个类的对象,通过该对象来实现对另一个类的访问)。
一个类是否能够继承超类的成员。


未完,原文地址:http://www.evget.com/zh-CN/Info/ReadInfo.aspx?id=9281
分享到:
评论

相关推荐

    浅析Java中的访问权限控制Java开发Java经验技巧共

    本文将深入探讨Java中的访问权限控制,以及其在实际开发中的应用和重要性。 首先,Java提供了四种不同的访问级别,分别是:public、protected、默认(包级私有)和private。这些访问修饰符用于定义类、接口、方法和...

    java编程技巧典型案例解析

    - 泛型方法与泛型类:如何声明和使用,以及边界限定(如`<? extends T>`和`<? super T>`)。 - 泛型通配符:了解上界通配符、下界通配符的使用场景。 3. 集合框架 - List、Set和Queue的区别:理解各自的特点,...

    Java程序设计技巧1001例

    100.002和100.003可能详细讲解了类的定义、构造函数、访问修饰符、方法重写以及接口的使用,这些都是理解和编写复杂Java程序的关键。 3. **异常处理**:Java提供了异常处理机制,使得程序在遇到错误时能优雅地处理...

    Java远程控制简单实现

    不过,你可以通过提供的博文链接访问原文,了解更多关于如何在Java中实现远程控制的具体步骤和技巧。文章可能会涵盖上述的各个方面,包括设置环境、解决常见问题以及优化远程控制系统的性能等。在实际开发中,理解并...

    java程序员面试技巧

    - **访问修饰符**:使用`private`、`protected`等修饰符控制成员的访问权限。 - **getter/setter方法**:通过这些方法来读取或设置私有成员的值。 **4. 多态性** 多态性允许程序以统一的接口来处理不同类型的对象...

    java实验报告.docx

    【实验一】主要介绍了如何使用Java开发环境Myeclipse和JDK进行程序的编辑、编译和运行。实验目标包括熟悉JDK安装配置、IDE工具的...每个实验都是对Java某一特定领域的深入实践,旨在提升学生的编程技巧和问题解决能力。

    Java编程入门前言Java开发Java经验技巧共3页.p

    4. **基础语法**:Java是一种强类型语言,变量必须先声明后使用。它支持类、接口、继承、多态等面向对象特性。掌握基本的控制结构(如if语句、for循环、while循环)和异常处理也是必要的。 5. **类与对象**:理解类...

    Java编码规范,技巧与建议

    在Java编程领域,遵循良好的编码规范和掌握实用的编程技巧...通过遵循这些规范和应用这些技巧,Java开发者能够编写出更加高效、可读和易于维护的代码。不断学习和实践,提升编程技能,是每个Java程序员成长的必经之路。

    关于Java变量的可见性问题Java开发Java经验技巧共

    2. **封装(Encapsulation)**:Java鼓励通过设置访问修饰符来控制类的成员(包括变量)的访问级别,以保护数据不被外部代码随意修改。通常,类的实例变量应该声明为private,然后通过公共的getter和setter方法进行...

    java程序设计技巧1001例

    以上只是《Java程序设计技巧1001例》中可能涵盖的部分内容,实际教程可能会涉及更多实用技巧和进阶主题,如Lambda表达式、模块化系统、JavaFX图形界面编程等。通过学习和实践这些例子,开发者可以逐步提升自己的Java...

    JAVA小技巧

    在Java编程领域,掌握一些小技巧能够极大地提升开发效率和代码质量。以下是一些关键的知识点,涵盖了Java面试常问问题、常见编程错误及其解决办法,以及Java设计模式的应用。 1. **Java基础:** - **数据类型与...

    Java编程中异常处理的方法和技巧研究.pdf

    在实际开发中,异常处理技巧和方法的研究对Java程序开发十分重要。通过学习和掌握Java中的异常处理机制和技术,开发人员可以编写更加健壮和可靠的程序,提高程序的安全性和可维护性。 在这个论文中,我们将深入探讨...

    plsql学习及与JAVA综合使用

    当PL/SQL与Java结合使用时,可以在企业级应用开发中发挥各自的优势,构建高效、稳定的数据处理系统。 在Java中调用PL/SQL主要是通过JDBC(Java Database Connectivity)接口实现。JDBC是Java中用于连接数据库的标准...

    java和Android开发指南

    7. **权限管理**:Android应用需要声明并获取特定权限才能访问硬件设备、网络等资源。 8. **通知与服务**:服务在后台运行,即使应用不在前台也可以执行任务。通知则可以向用户显示消息,即使应用未运行。 9. **...

    Delphi调用Java类和包源代码

    首先,我们需要定义Java端的JNI函数,这通常是在Java的`.java`文件中,使用`native`关键字声明。然后,通过`javah`工具生成对应的C/C++头文件,这将包含JNI函数的原型。 3. **Delphi实现JNI接口**:在Delphi中,...

    Java 技巧

    在深入探讨“Java技巧”这一主题时,我们不仅会触及到标题、描述和标签中所指的广泛领域,还会进一步挖掘那些对Java开发者而言至关重要的技术细节与实践策略。Java,作为一门历史悠久且广泛应用的编程语言,其生态...

    JavaMain如何被执行?Java开发Java经验技巧共

    - **IO/NIO**:了解输入输出流的使用,以及非阻塞I/O(New IO,NIO)和异步I/O(Java NIO.2)的特性。 - **设计模式**:掌握常见的设计模式,如单例、工厂、观察者等,提高代码复用性和可维护性。 - **反射**:了解...

    Java经典题目_新手笔试使用

    Java是一种广泛使用的编程语言,以其跨平台性、稳定性和强大的功能而闻名。以下是一些关于Java的详细知识点,主要基于给定的面试题目。 1. **Java的优势**:Java的优势包括免费开源、跨平台(Java虚拟机JVM使得Java...

    Java和c++相互调用javalearnsa资料分享

    10. **调试技巧**:在开发和调试JNI代码时,可以使用JDB(Java Debugger)配合GDB(GNU Debugger)进行联合调试,或者利用Java的日志API记录调试信息。 总结来说,Java和C++的互调用是一个复杂但强大的技术,允许...

Global site tag (gtag.js) - Google Analytics