【abstract】抽象的

1. abstract可以修饰类和成员方法,被abstract修饰的类称为抽象类,被abstract修饰成员方法叫抽象方法。抽象类不一定有抽象方法,但拥有抽象方法的类一定是抽象类;

2. 被abstract修饰的类不能直接实例化,需要通过子类实现,所以抽象类一定有子类;

3. 继承抽象类的子类必须要重写抽象类中被abstract修饰的抽象方法,如果不继承就必须要把自己变成抽象的子类。

【final】最终的

1. final可以修饰类,成员变量,成员方法,局部变量/形参。

2. final修饰的类不能被继承(即不能有子类);

3. final修饰的方法不能被重写;

4. final修饰的成员变量是常量,必须在定义时就必须给一个终值,并且不能改变,不能重新赋值;

5. final修饰的局部变量、形参只能接收赋值一次,一旦赋值成功,就不能改变,不能重新赋值。

【static】静态的

1. static 可以修饰成员变量,成员方法;被static修饰的会被当前类的所有对象共享;

2. static 修饰的成员变量和成员方法会被放在JVM的静态方法区,随着类的加载而加载,可以使用类名或引用调用;

3. static修饰的成员方法只能调用static修饰的成员变量,非静态的成员变量不能调用;

【private】私有的

1. private可以修饰成员变量和成员方法;

2. 被private修饰的成员变量和成员方法只能被当前类访问,其他类不能访问;

3. 被private修饰的成员方法不能被重写。

【protected】

1. protected 可以修饰成员变量和成员方法;

2. 被protected修饰的成员变量和成员方法可以被当前类和当前类的子类访问,其他类不能访问;

3. 被protected修饰的成员方法可以被子类重写

【public】公共的

1. public修饰的类,成员变量,成员方法都是公共的,可以被所有类直接访问

【Java】abstract,final,static,private,protected,public的区别的更多相关文章

  1. [Java] Protect, Private and Public的区别

    Java中的private.protected.public和default的区别 (2014-03-21 22:29:14) 转载▼ 标签: java java修饰符 it   (1)对于publi ...

  2. private,protected,public和default的区别

    private,protected,public和default的区别 除了default以外,其他都是Java语言的关键字.default代表的是对类成员没有进行修饰的情况.它本身也代表了一种访问控 ...

  3. @private@protected@public@package

    @private@protected@public@package 为了强制一个对象隐藏其数据,编译器限制实例变量范围以限制其在程序中的可见性 但是为了提供灵活性,苹果也让开发者显式设置范围(四选一) ...

  4. 转 Java中final、finally、finalize的区别与用法

    Java中final.finally.finalize的区别与用法   1.简单区别:final用于声明属性,方法和类,分别表示属性不可交变,方法不可覆盖,类不可继承.finally是异常处理语句结构 ...

  5. Java中 final static super this instanceof 关键字用法

    一.final关键字 final可以修饰变量.方法及类: 1.当定义一个final变量时,jvm会将其分配到常量池中,其所修饰的对象只能赋值一次,对基本类型来说是其值不可变,引用类型(包括作为函数形参 ...

  6. java 关键字final static native详解

    java 关键字native static final详解 一.final 根据程序上下文环境,Java关键字final有"这是无法改变的"或者"终态的"含义, ...

  7. oc 中四种实例变量的范围类型@private@protected@public@package

    To enforce the ability of an object to hide its data, the compiler limits the scope of instance vari ...

  8. iOS中四种实例变量的范围类型@private@protected@public@package

    文档上记录是这样的 The Scope of Instance Variables Toenforce the ability of an object to hide its data, the c ...

  9. 对private protected public的详解:

    #include <iostream> #include <stack> #include <queue> #include <exception> # ...

随机推荐

  1. 3 TFRecord样例程序实战

    将图片数据写入Record文件 # 定义函数转化变量类型. def _int64_feature(value): return tf.train.Feature(int64_list=tf.train ...

  2. 封装一个MPermissionsActivity的思路和步骤

    http://blog.csdn.net/longkehuawei/article/details/53202804 第一步:检测所有的权限是否都已授权 /** * 检测所有的权限是否都已授权 * * ...

  3. 页面引入(include)方式的研究及性能比较

    1. 应用Html中的框架(iframe) 目前大多数门户网站都应用iframe来进行页面上广告的投放,就是将不同的广告分别应用iframe投放到主页面上,优点是效率高,互不影响,缺点是不符合网页标准 ...

  4. 【Leetcode】【Medium】Binary Tree Inorder Traversal

    Given a binary tree, return the inorder traversal of its nodes' values. For example:Given binary tre ...

  5. UIButton的titleLabel

    UIButton的titleLabel @property(nonatomic, readonly, retain) UILabel *titleLabel Description - 描述A vie ...

  6. Python Json获取天气预报

    #!/usr/bin/python # -*- coding: UTF-8 -*- import json import smtplib import urllib from email.mime.t ...

  7. 深入理解PHP传参原理(PHP5.2)

    首先说下今天想到的一个问题.在编写php扩展的时候,似乎参数(即传给zend_parse_parameters的变量)是不需要free的.举例: PHP_FUNCTION(test) { char* ...

  8. 为什么说 Java 程序员必须掌握 Spring Boot ?

    原作者https://www.cnblogs.com/ityouknow/p/9175980.html Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热,就单从我个人 ...

  9. [原]零基础学习视频解码之安装ffmpeg

    写在文章前面:ffmpeg是一个开源的编解码框架,拥有很强大的功能.但是对于如果使用其来做开发呈现着严重两极分化,大神们讨论着高深的问题,大多数像我这样的小白连门都进不去.最近无意间领会了如何入门,现 ...

  10. hdu-2619 Love you Ten thousand years

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2619 题目大意: 求出小于n的数的个数,满足ki mod n,1≤i≤n是模n的完全剩余系 解题思路 ...