`
星期极xgj
  • 浏览: 2476 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类

java面向对象编程

    博客分类:
  • java
阅读更多

1、Class类的访问权限:
    public:可以供所有的类访问。
    默认(包访问权限):默认可以称为friendly但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++。默认的访问权限是包级访问权限。 

      即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即使可以实例化该类
      (当然如果这个类不具有实例化的能力除外,比如该类没有提供public的构造函数)。
说明:
    1、每个编译单元(类文件)都仅能有一个public class
    2、public class的名称(包含大小写)必须和其类文件同名。
    3、一个类文件(*.java)中可以不存在public class。
    这种形式的存在的场景:如果我们在某个包内撰写一个class,仅仅是为了配合同包内的其他类工作,而且
    我们不想再为了撰写说明文档给客户(不一定是现实意义的客户,可能是调用这个类的类)看而伤脑筋,而且有可能过一段时间之后    有可能会彻底改变原有的做法,并完全舍弃旧版本,以全新的版本代替。
    4、class不可以是private和protected。(除了内部类之外)
    5、如果不希望那个任何产生某个class的对象,可以将该类得所有构造函数设置成private。但是即使这样也可以生成该类的对象,就是class的static的成员(属性和方法)可以办到。
 
2、类成员变量的访问权限:

    public:紧接public的属性任何类都可以访问到。可以直接使用ClassName.propertyName。但是从类的封装性上来考虑将一个类的属性定义成public一般很少使用, 

    在定义静态常量的时候通畅会这样定义。如:public static final int PAGE_SIZE=10;

    private:只有类本身内部的方法可以访问类的private属性,当然内部类也可以访问其外部类的private成员的。(属性和方法)
    默认(friendly):包级可见,同一个包内的类可以访问到这个属性,可以直接使用className.propertyName来访问,但是从类的封装性特性来说很少这样使用类的属性的。
    protected:关键字所处理的是所谓“继承”的观念。对于同一包的其他类,protected=默认,其它类可访问protected.对于不同包的类,如果存在继承关系,而baseClass存在protected属性,则可以被其自继承,而不同包的其他类 则不能访问类的protected属性。 

3、类的成员方法的访问权限:
其从语法角度来讲,这写访问权限控制符作用于类的方法和作用于类的属性上的效果是一样的。

    public:所有类可见。
    private:只有同一类内部的方法可见,在有就是内部类也可以访问到。
    默认(friendly):包内可见。
    protected:继承可见。 

4、访问权限存在的理由
    (1). “让使用者无法碰触到他们不该碰触的东西。”这些东西仅供类的内部机制使用。将某些成员声明成private,对于使用者来说可以说是一种服务,
因为这样使用者可以知道哪些是他关注的哪些是不重要的,不需要关注,如此历来对于使用来说降低了对使用对象认识的难度。
    (2).(最终要的理由)让程序设计者可以更动class内部运作方式,而无须担心波及到客户端程序。
    (3). java的“访问权限修饰符”赋予classes开发者极具有价值的控制能力。身为classes开发者,如果你的任何改变可以完全不干扰你的使用者,你便可以安心改变你的底层实现,因为客户端程序员无法访问class的这一部分

分享到:
评论

相关推荐

    java面向对象编程pdf

    Java面向对象编程PDF 在这篇文章中,我们将对Java面向对象编程的基础知识进行总结和解释。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为...

    java面向对象编程源码

    本书内容由浅入深,紧密结合实际,利用大量典型实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化 Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。...

    Java面向对象编程练习题.pdf

    Java面向对象编程练习题 本资源摘要信息涵盖了 Java 面向对象编程的基础知识,通过三个练习题,展示了 Java 编程语言的基本概念和应用。 练习题 01: 类的成员变量 本练习题展示了 Java 中类的成员变量的概念。类 ...

    Java面向对象编程实例详解

    Java面向对象编程是一种核心的编程范式,广泛应用于软件开发中。它基于“对象”的概念,将数据和操作数据的方法封装在一起,强调程序的结构、重用性和可维护性。本实例详解旨在深入剖析Java面向对象编程的关键概念,...

    JAVA面向对象编程(孙卫琴)01

    根据提供的文件信息,关于《JAVA面向对象编程(孙卫琴)01》这本书,我们可以提炼出以下知识点: 首先,这本书是由孙卫琴编著的,专门针对JAVA面向对象编程的教程书籍。从标题我们可以知道,这本书是面向对象编程的...

    JAVA面向对象编程(孙卫琴)(带完整书签版,课后答案,源代码).z03

    JAVA面向对象编程(孙卫琴)(带完整书签版,课后答案,源代码) 最好的JAVA入门书籍 讲解全面,透彻 需要单独下载课后答案和源代码的在本人资源中可以找到,欢迎下载 本压缩包共分为6个部分,这里为第三部分。

    JAVA面向对象编程(孙卫琴)08.pdf

    1. Java面向对象编程:面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,依赖于对象的概念来设计应用程序。在面向对象编程中,数据和方法被封装成一个单一的单元,即对象。这些对象通过发送...

    JAVA面向对象编程(孙卫琴)1.pdf

    《JAVA面向对象编程》是IT领域内一部权威的教材,由资深软件工程师孙卫琴编著,本书系统地介绍了JAVA语言的面向对象编程思想与技术。面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它将程序...

    JAVA面向对象编程_孙卫琴2.pdf

    ### JAVA面向对象编程的核心知识点解析 #### 一、面向对象编程概述 面向对象编程(Object-Oriented Programming,简称OOP)是一种计算机编程架构。它将计算机程序设计成由简单的称为“对象”的基本单位组成。面向...

    java面向对象编程课后思考题答案

    Java面向对象编程是Java开发中的核心概念,它基于面向对象编程思想,使代码更具有可读性、可维护性和灵活性。孙卫琴女士的教程深入浅出地讲解了这一主题,帮助许多学习者理解并掌握这一重要技能。课后思考题是检验...

    孙卫琴《Java面向对象编程》配套PPT

    《孙卫琴《Java面向对象编程》配套PPT》是一份深入浅出的教程资源,旨在帮助学习者全面掌握Java编程中的面向对象概念和技术。Java作为一种广泛应用的编程语言,其面向对象特性是其核心魅力所在,它使得代码更加模块...

    Java面向对象编程

    JAVA 面向对象编程 网络编程 可简单游戏开发 初学者可五子棋等

    JAVA面向对象编程_孙卫琴.pdf

    ### JAVA面向对象编程知识点概述 #### 一、面向对象编程基础 面向对象编程(Object-Oriented Programming,简称 OOP)是一种程序设计思想,它将数据和操作数据的方法定义为统一的整体——对象(Object),并通过类...

    JAVA面向对象编程

    《JAVA面向对象编程》一书由孙卫琴撰写,它深入浅出地讲解了Java中面向对象的思想和实践,是Java爱好者提升技能的宝贵资源。下面我们将详细探讨Java面向对象编程的关键知识点。 1. 类与对象:在Java中,类是对象的...

    Java面向对象编程思想.pdf

    Java面向对象编程思想 Java 面向对象编程思想是 Java 编程语言的核心思想之一,通过封装、继承和多态三个特征,实现代码的重用和可维护性。 一、封装 封装是 Java 面向对象编程的三大特征之一,通过 Java 的类来...

    《Java面向对象编程》电子书+实例源代码+课后题答案.part12

    本资源包含《Java面向对象编程》的电子书,实例源代码,课后题答案等可以说是当前该书最全的资源了。。。 PS:本资源中的电子书是由网上收集得到,仅为原书第一版的内容。随着Java的不断发展(现在6.0版都已经非常...

    java面向对象编程猜一猜游戏.zip

    java面向对象编程猜一猜游戏.zipjava面向对象编程猜一猜游戏.zip java面向对象编程猜一猜游戏.zipjava面向对象编程猜一猜游戏.zip java面向对象编程猜一猜游戏.zipjava面向对象编程猜一猜游戏.zip java面向对象编程...

    孙卫琴《Java面向对象编程》配套PPT及书中源码

    《孙卫琴《Java面向对象编程》配套PPT及书中源码》是一个针对Java编程初学者和进阶者的宝贵资源,由知名Java教育专家孙卫琴编著。这个压缩包包含两部分:java_ppt.rar 和 sourcecode.rar,分别对应于教学PPT和书中的...

Global site tag (gtag.js) - Google Analytics