java——final、权限修饰符】的更多相关文章

以前对访问修饰符总是模棱两可,让自己仔细解释也是经常说不很清楚.这次要彻底的搞清楚. 现在总结如下: 一.概括总结 各个访问修饰符对不同包及其子类,非子类的访问权限 Java访问权限修饰符包含四个:public,protected,friendly,private:但是,friendly在java中并没有显示的声明,成员变量和方法默认情况下就是friendly权限. 现在把它们的访问权限表示出来:(目前展示访问修饰符的方式主要有两种) 表示图一:(第一种展示方式,把不同的类文件分为两个变量,"是…
作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × java访问权限修饰符 不写时默认为friendly…
老是把Java中权限修饰符给忘记,写一个博客加深印象吧 权限分为四个作用域:当前类,同一个包,其他包的子类,其他包的类. 首先要知道包的概念,Java中一个包是指一个package下的所有文件. protected适用于修饰成员变量的,也就是类中的方法和属性,不能用于修饰类.子类B继承了父类A,如果父类class是缺省的,而子类class是public的,那么在其他包的类中,可以定义该子类B的对象,也可以调用父类A中的protected修饰的方法,但是不能在其它包中定义父类A的对象. packa…
本文目标 static final: 权限修饰符:public,private,protected,缺省 1.static 静态修饰符,被static修饰的变量或者方法会被加载进静态区内存,不需要创建对象就可以调用此方法或变量 2.final: final修饰类不能被继承,修饰方法不能被重写,修饰变量不能被改变且必须初始赋值 3.权限修饰符: public: 可以被任意调用 private:可以被本包或者不同包的子类调用 protected:只能被本类调用 缺省:只能本包调用…
java中四种权限修饰符, 平时编码中最常用的其实public和private, 虽然对protected的概念一直都知道, 但真正使用时才发现有些偏差. protected表示被其修饰的成员可以被本类, 同包下的所有类, 以及本类的所有子类所访问. 被本类的所有子类访问很容易让人产生误解, 我在进行测试时, 第一反应就是在不同包下创建一个子类, 在main方法中new一个父类对象, 试图通过该对象.成员变量名 来调用protected的成员变量, 然而, 结果是------>编译出错  0.0…
首先声明:Java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly.为了条理清晰,分三种不同情况来总结. 一 访问权限修饰符修饰成员变量和方法   public:表明该成员变量和方法是共有的,能在任何情况下被访问.      protected:必须在同一包中才能被访问.(说的比较简单,看个例子就明白了)           eg:class A          {             protected int weight…
2017-11-04 22:28:39 访问权限修饰符的权限 访问修饰符protected的权限理解 在Core Java中有这样一段话“在Object类中,clone方法被声明为protected,因此无法直接调用anObject.clone().子类只能直接调用受保护的clone方法克隆它自己.为此,必须重新定义clone方法,并将它声明为public,这样才能让所有的方法克隆对象”.但是不是所有的子类都可以访问受保护的方法吗?不是每个子类都是Object的之类吗?下面就用例子来说明下pro…
1.public 可以修饰类.成员变量和成员函数,没有任何限制,同一个包中,或者不同包中的类都可以自由访问 2.private 可以修饰成员变量和成员函数,只能在本类中使用 3.default (不写权限修饰符,就是default权限)可以修饰类.成员变量和成员函数,在同一个包中,可以自由访问.如果子类和父类不在同一个包中,子类可以继承到父类中的default权限的成员变量和成员函数,但是由于权限不够,无法使用 4.protected protected权限首先拥有和default一样的功能,但…
访问权限修饰符权限从高到低排列是public  ,protected  ,default, private. 一.根据“是否是同包”.“是否是子类”分为4中情况+本类 5种情况 二.把 同包中的子类 和 同包中的非子类 合并为 同包 访问修饰符 本类 同包 不同包,子类 不同包,非子类 public √ √ √ √ protected √ √ √   default(friendly) √ √     private √      …
static静态修饰符(使用static修饰符修饰的成员变量.常量.和成员方法成为静态变量.常量和方法,他们统称为静态成员,归整个类所有,不依赖于类的特定实例,被类的所有实例共享,只要这个类被加载,JVM就可以根据类名在运行时数据区的方法区找到他们) 静态变量 对于静态变量,运行时,JVM只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配.在类的内部,可以在任何方法内直接访问静态变量:在其他类中,可以通过类名访问该类中的静态变量. 静态变量可以被类的所有实例共享,因此静态变量可以作…
课上老师所讲实例整理: package org.hanqi.pn0120; //汽车 public class Car { //颜色 private String yanse; //品牌 private String pinpai; //油箱容量 private double youxiangrl = 40; //当前油量 private double dangqianrl; public double getDangqianrl() { return this.dangqianrl; } //…
可横向,纵向进行比较记忆…
Java当中权限修饰符共有四种.分别是public.protected.(default).private. 注:YSE代表可访问,NO代表不可访问.   同一个类 同一个包,非继承 不同的包,有继承 不同包,非子类 public YES YES YES YES protected YES YES YES NO (default) YES YES NO NO private YES NO NO NO…
一.final关键字 为什么要使用 final 关键字? 通过继承我们知道,子类可以重写父类的成员变量和方法.final 关键字可以用于修饰父类,父类成员变量和方法,使其内容不可以被更改. 1.被修饰的类,不能被继承.但是其成员变量和方法如果未被final修饰,仍然可以被修改. //final修饰类 final class Finally1 { private int a = 1; public int getA(){ return this.a; } public int setA(int a…
一.权限修饰符 1.概述 在 Java 中提供了四种访问权限,使用不同的访问权限修饰符修饰时,被修饰的内容会有不同的访问权限: public:公共的: protected:受保护的: default:默认的: private:私有的: 2.不同权限的访问能力 可见,public 具有最大权限,private 则是最小权限. (1)权限修饰符可以修饰什么?   类(类.接口等).属性.方法.构造器.内部类 修饰类(外部类):public 和 缺省 修饰属性:  4种都可以 修饰方法:  4种都可以…
一.继承: 关键字extends /* 定义一个父类:人类 定义父类格式:public class 父类名称{ } 定义子类格式:public class 子类名称 extends 父类名称{ } */ 代码示范: *要点: 1.子类中在main方法中创建父类对象可调用父类方法: 2.不加关键字直接访问本方法局部变量(可重名时区分): 3.使用this关键字访问本类成员变量(可重名时区分): 4.使用super关键字访问父类成员变量(可重名时区分): 5.如果存在方法的重名:父类与子类有重名方法…
1. 修饰符 public.protected.private.default abstract.static.final. abstract:抽象类.抽象方法 static:静态变量.静态方法.静态代码块 final修饰类.方法.变量 transient.violatile.native.synchronized 2. 变量 实例变量.局部变量.类变量 1. 修饰符 · public.protected. private.default 类的访问权限   当前类 同包其它类 子孙类 其它包的类…
final修饰类:  final修饰成员方法: final修饰局部变量的时候: 对于基本类型来说,变量的数值不能改变 对于引用类型来说,变量的地址不能改变 final修饰成员变量的情况: 权限修饰符:…
1.Java有三种访问权限修饰符,分别为public.protected.private,还有一种为缺省权限修饰符的情况,记为default.其中,可以由public和default来修饰类:这四种修饰符都可以修饰成员变量和成员方法.每一种修饰符对应不同的访问范围,下面以下图为例详细说明. 图1 private只可以覆盖圆1,即只有本类可以访问: default可以覆盖到圆3,即本类.同包子类.同包其他类都可以访问,简单说就是与本类同包的所有类都可以访问: protected可以覆盖到圆4,即本…
java中的修饰符分类: 权限修饰符: private, default, protected, public 状态修饰符: static, final 抽象修饰符: abstract 权限修饰符 我们来看看四种权限修饰符的权限大小 (注意:没有default这个关键字,它就是代表默认的意思,即什么修饰符也不加) 一般,默认的可见性就是包可见性(package visibility) 1. public修饰符 具有最大的访问权限,可以访问任何一个CLASSPATH下的类,接口.异常等.它往往对于…
注:本博文是转载的,原文地址:http://blog.csdn.net/xk632172748/article/details/51755438 Java中修饰符总结: 访问控制修饰符 访问控制修饰符 作用: 用于控制被修饰变量.方法.类的可见范围. public的访问级别是最高的,其次是protected.默认和private. 成员变量和成员方法可以处于4个访问级别中的一个:公开.受保护.默认或私有. 存在继承关系时,父类不可以是private,因为子类无法继承 顶层类可以处于公开或默认级别…
1.关键字:this,static,package,importthis:1.表示对当前对象的引用!2.表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特例,比较常用,所以那出来强调一下.3.用于在构造方法中引用满足指定参数类型的构造器(其实也就是构造方法).但是这里必须非常注意:只能引用一个构造方法且必须位于开始!还有就是注意:this不能用在static方法中!所以甚至有人给static方法的定义就是:没有this的方法!虽然夸张,但是却充分说明…
1.形式参数和返回值的问题 (1)形式参数: A:类名:需要该类的对象 B:抽象类名:需要改类的子类对象 C:接口名:需要该接口的实现对象 (2)返回值类型: A:类名:抽象类名:返回的是该类的对象 B:抽象类名:返回的是该类的子类对象 C:接口名:返回的是该接口的实现类对象 (3)链式编程 每次调用完毕方法后,返回的是一个对象 2.包 (1)其实就是文件夹   (2)作用: A:区分同名的类 B:对类进行分类管理 ①按照功能分 ②按照模块分 (3)包的定义: ①package 包名; ②多级包…
package cn.learn.Final; /* 当final用来修饰类 1.该类不能有任何子类,成员方法均无法覆盖重写,但可以重写父类的方法 当final用来修饰方法 1.该方法不能被覆盖重写 2.但不能和 abstract 同时使用,抽象方法没有方法体,矛盾 当final用来修饰局部变量 1.该变量不可改变,一次赋值终生不变 注:对于基本类型来说,数值不可改变 对于引用类型来说地址值不可改变, eg :final Phone myPhone = Phone("apple") m…
一.是哪四种访问权限修饰符呢? public > protected > [default] > private (公共的 ) (受保护的) (默认的) (私有的) 二.简单认识四种访问修饰符 1.public权限修饰符 public--可以修饰类,方法,构造方法,接口,方法成员. 被public修饰的成员,可以在任何一个类中被调用,不管同包或不同包,是权限最大的一个修饰符. 如果几个相互访问的 public 类分布在不同的包中,则需要导入相应 public 类所在的包. 由于类的继承性…
public 不受任何限制,可以被其他任何类访问 一个JAVA文件只能包含一个public文件 java将public类作为每个编译单元的数据接口  只能有一个接口 private 只能在自己类中访问 protected 只能让自己和继承自己的类访问 将私有成员变量private权限修饰符改成 protected protected关键字可以把方法和成员的访问权限控制在继承树内部 package 指一个类允许访问同一个package的没有public private修饰的class  以及没有p…
首先了解概念: 在java中有四种权限修饰符:范围从大到小分别是:public.protect.default(friendly).private,它们之间的区别是: public: Java语言中访问限制最宽的修饰符,一般称之为“公共的”.被其修饰的类.属性以及方法不仅可以跨类访问,而且允许跨包(package)访问. protect: 介于public 和 private 之间的一种访问修饰符,一般称之为“保护形”.被其修饰的类.属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中…
Java应用有很多类,但有些类并不希望被其他类使用.每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用.如何能做到访问控制呢?就需要使用访问权限修饰符. Java语言中的访问权限修饰符有4种,但是仅有3个关键字,因为不写访问权限,在Java中被称为默认权限,或同包权限,本文中以(default)代替.下面 按照权限从小到大的顺序对4中访问权限分别介绍: (1)私有权限 private:private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑…
Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java 支持 4 种不同的访问权限. default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符.使用对象:类.接口.变量.方法. private : 在同一类内可见.使用对象:变量.方法. 注意:不能修饰类(外部类) public : 对所有类可见.使用对象:类.接口.变量.方法 protected : 对同一包内的类和所有子类可见.使用对象:变量.方法. 注意:不能修饰类(外部类). 1.如果一个类的成员…
四种权限修饰符的测试 /* 权限修饰符: 本类 同一个包下(子类和无关类) 不同包下(子类) 不同包下(无关类) private Y 默认 Y Y protected Y Y Y public Y Y Y Y */ package com.liuyi; public class Father { private void show() { System.out.println("show"); } void show2() { System.out.println("show…