韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha static与abstract不能同时使用 用static声明方法表明这个方法在不生成类的实例时可直接被类调用,而abstract方法不能被调用 必须在子类overriding后才能使用. native可以与所有其它的java 标识符连用,但是abstract除外. 因为 native 暗示这些方法是有实现体的,只不过这些实现体是非java 的,但是abstract却显然的指明这些方法…
在网上查阅资料,静态大约分为这几部分:修饰成员变量:修饰成员方法:静态代码块:静态导包,下面会用代码一一展示: 修饰成员变量: 一个类中,使用static修饰成员变量后,该变量变为全局变量,当再次new这个类时,该变量不会被初始化,也就是说如果实例化两个这个类的对象,改变其中一个静态变量的值,另一个对象的静态变量的值也会改变. public class StaticTest { private String st1 = "abc"; private static String st2…
抽象类:不能实例化!子类继承抽象类, 实例化子类对象才可以调用, 多态的体现; 抽象方法:必须被重写才能被调用; 静态方法:类名直接调用,或者实例化对象调用; 构造方法:new后面的括号里面带参数,就用带参数的构造方法实例化,                    new后面的括号里面不带参数,就用无参构造方法实例化; 构造方法的重载: 例如,程序有参构造方法1和2 这里面还涉及到一个执行顺序的问题,详情对比程序运行结果   这块的学习一定不要单纯背诵,结合eclipse练习! package…
1.java的抽象方法为什么不能用static修饰?类抽象方法? 如上代码,在抽象类中定义static属性是没有问题的,但是定义抽象方法时是不能定义为静态(static)的,否则编译器会报错:The abstract method geta in type abstractTest can only set a visibility modifier, one of public or protected 我们只定义静态static方法完全OK,因为静态方法是属于类的,所以静态方法必须满足给类调…
JAVA关于静态static的面试题     版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/gutie_bartholomew/article/details/82818092 1.静态(static) static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块. static修饰的变量习惯称为静态变量,static修饰的方法称为静态方法,s…
Static那些事儿 Static关键字 被static修饰的变量成为静态变量(类变量) 作用:是一个修饰符,用于修饰成员(成员变量,成员方法) 1.被static修饰后的成员变量只有一份 2.当成员被static修饰之后,多了一种访问方式,除了可以被对象调用之外还可以被雷鸣直接调用(类名.静态成员) static关键字,修饰变量,只保存最后一个值,立即改,立即用. static关键字是一个修饰符说白了意思就是用static修饰成员以后,这个成员就变成大家共有的了 ,任意一个对象可以调用它并且也…
------- android培训.java培训.期待与您交流! ---------- 主函数:是一个特殊的函数.作为程序的入口,可以被jvm调用. 主函数的定义: public:代表着该函数访问权限是最大的. static:代表主函数随着类的加载就已经存在了. void:主函数没有具体的返回值. main:不是关键字,但是是一个特殊的单词,可以被jvm识别. (String[] arr):函数的参数,参数类型是一个数组,该数组中的元素是字符串.字符串类型的数组. 主函数是固定格式的:jvm识别…
Java栈与堆 堆:顺序随意 栈:后进先出(Last-in/First-Out). Java的堆是一个运行时数据区,类的对象从中分配空间.这些对象通过new.newarray.anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放.堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据.但缺点是,由于要在运行时动态分配内存,存取速度较慢. 栈的优势是…
static (静态修饰符)        1.修饰成员变量        静态变量的访问方式:            方式一 : 通过对象访问.                对象.变量名            方式二: 同过类名                类.变量名                静态变量的使用注意点 :            局部变量不允许被static修饰.            用static修饰的变量式放在共享区的,所以千万不要为了方便就将所有的静态变量都定义为成…
C++和Java中都有的一个静态关键字Static,可以放在类中的变量或者函数之前,就成了静态变量或者静态函数. 静态变量又分为静态全局变量和静态局部变量,可参见网上大神总结的C++全局变量,局部变量,静态全局变量,静态局部变量的区别.在类中的静态变量在定义时需要用类名引导,对其访问时,使用类名或者对象名都可以.一般来说静态变量是用来保存流动变化的对象的个数的. 类中的静态函数和普通的成员函数的区别是它可以不通过类的对象调用的,因为它根本就没有对象,而且也不能访问类中非静态的成员.静态函数可以只…
static关键字既可以修饰成员变量,也可以修改成员方法,修饰的成员变量和成员方法可以直接通过类名调用,也可以通过对象调用(其实即使是通过对象调用,也会被翻译成类名调用),建议通过类名调用. 成员方法用static修饰后,就成为了静态方法,静态方法不属于对象,而是属于类. 注意事项: 1.静态方法中不能使用this,因为this指的是当前对象,而静态方法是通过类名调用的 2.静态不能直接访问非静态,因为内存中是[先]有静态,[后]有非静态,可能会出现调用的东西不存在 3.调用同一个类中的静态方法…
static关键字 用来修饰方法的情况 任何使用这个静态方法呢? 可以直接通过对象名称的方式进行调用. 更好的写法是通过类名称进行调用. 分别定义成员变量和静态变量 静态方法里面不能用this…
Java 静态static关键字,静态代码块详情参考:static的使用原理讲解http://www.cnblogs.com/itcqx/p/5519464.html main函数: java MainDemo:将MainDemo类传入给虚拟机,启动虚拟机执行编译一个类的同时传入参数,java MainDemo hah he 将类后面跟入的数据已空格的格式区分自动存入数组当中. /* public static void main(String[] args) 主函数:是一个特殊的函数.作为程序…
这次我们来学习静态(static) 知识点 1.静态方法只能调用静态变量 2.静态变量属于整个Class,会随着发生变化. 案例:定义一个自动增长的学生类. 题目要求: 定义一个学生类,除了姓名.性别.学历层次. 还有自动增长的学号,本科以A开头,专科以B开头.  编号从100开始,如A0103. 方法思路: 1.定义学生属性,姓名name  性别sex   学历层次level   学号 studentNo 2. 学号增长函数(解决自动增长问题) 3.测试 程序代码: Student(学生类)…
一. static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块. Java把内存分为栈内存和堆内存,其中栈内存用来存放一些基本类型的变量.数组和对象的引用,堆内存主要存放一些对象.在JVM加载一个类的时候,若该类存在static修饰的成员变量和成员方法,则会为这些成员变量和成员方法在固定的位置开辟一个固定大小的内存区域,有了这些“固定…
类: 访问修饰符 修饰符 class 类名称 extends 父类名称 implement 接口名称 (访问修饰符与修饰符的位置可以互换) 访问修饰符 名称 说明 备注 public 可以被本项目的所有类访问(使用),其他项目若想使用本项目中的类,必须将本项目打包为jar包,然后加入到classpath中 public类必须定义在和类名相同的同名文件中 (default) 只能被同一个包中的类访问(使用) 默认的访问权限,可以省略此关键字,可以定义在和public类的同一个文件中   修饰符 名…
一. static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个"伪全局"的概念,在Java中static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块. Java把内存分为栈内存和堆内存,其中栈内存用来存放一些基本类型的变量.数组和对象的引用,堆内存主要存放一些对象.在JVM加载一个类的时候,若该类存在static修饰的成员变量和成员方法,则会为这些成员变量和成员方法在固…
一.     java的类包 编写好一个源程序后,首先要执行javac命令进行编译源文件,并生成与源文件同名后缀为“.class”的字节码文件(类文件),该类文件与源文件默认在同一个目录中.该类文件是由用户创建的,而在java编程环境中,java本身提供了大量的类文件,在编程时可以直接引入使用,极大方便了程序的编写. 包的定义:是Java编程的基础,包蕴涵于标准类的体系结构和用户自己的程序中,包是有唯一命名的类的集合.在java中,包分为用户包和系统包. 一)用户包:即由用户在项目中创建的包.…
本文的主要内容如下   1.标识符合关键字 2.Java中的关键字 3.static关键 字 4.static方法 5.静态代码块 6.static修饰符综述 7.final关键字 8.final修饰符综述 9.抽象类abstract class 10.abstract综述 11.抽象类和接口的区别(j精讲) 1.标识符合关键字 标识符命名规则 (1)由字母.数字.下划线.$组成 ,不能以数字开头 (2)大小写敏感 (3)不得使用关键字和保留字 习惯 (1)标识符要符合语义信息. (2)包名所有…
    Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符     修饰符用来定义类.方法或者变量,通常放在语句的最前端.我们通过下面的例子来说明: public class className {   // ...}private boolean myFlag;static final double weeks = 9.5;protected static final int BOXWIDTH = 42;public static void main(String[]…
转自:http://www.cnblogs.com/yueue/archive/2010/04/20/1715863.html 一,抽象类:abstract     1,只要有一个或一个以上抽象方法的类,必须用abstract声明为抽象类;     2,抽象类中可以有具体的实现方法;     3,抽象类中可以没有抽象方法;     4,抽象类中的抽象方法必须被它的子类实现,如果子类没有实现,则该子类继续为抽象类     5,抽象类不能被实例化,但可以由抽象父类指向的子类实例来调用抽象父类中的具体…
回顾这两个关键字前,先考虑一个问题: Static变量存储在JVM中的位置,或者说static变量是如何被加载的? JVM会把类的静态方法和静态变量在类加载的过程中读入方法区(Method Area),相当于常驻内存,如果一个方法或者变量声明为static,可以节约内存,不必要为每个对象实例化的时候分配内存. >>final关键字 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.final类不能被继承,没有子类,f…
static关键字用处 用于修饰成员变量和成员函数 被修饰后的成员具有以下特点: 随着类的加载而加载 优先于对象存在 被所有对象所共享 可以直接被类名调用 使用注意 静态方法只能访问静态成员:非静态方法也可以访问静态成员 静态方法中不可以写this,super关键字 主函数是静态的 实例变量(成员变量)和类变量(静态变量)的区别 生命周期不同 成员变量随着对象的创建而存在,随着对象的回收而释放: 静态变量随着类的加载而存在随着类的消失而消失 2.   调用方式不同 成员变量只能被对象调用    …
 Java面向对象 Main函数 静态的应用与单例设计模式 知识概要             (1)Main函数的细解 (2)静态的应用,静态变量,静态代码块,静态函数 (3)单例设计模式 1.Main函数的细解                             public static void main(String[] args) 主函数:是一个特殊的函数.作为程序的入口,可以被jvm调用. 主函数的定义:      public:代表着该函数访问权限是最大的.      st…
在Java类里只能包含成员变量.方法.构造器.初始化块.内部类(包括接口.枚举)5种成员,类成员是用static来修饰的,其属于整个类. 当使用实例来访问类成员时,实际上依然是委托给该类来访问类成员,因此即使某个实例为null,它也可以访问它所属类的类成员. public class NullAcessStatic { public static void test() { System.out.println("static修饰的类方法"); } public static void…
静态变量和静态方法都属于静态对象,它与非静态对象的差别需要做个说明. (1)Java静态对象和非静态对象有什么区别? 比对如下: 静态对象                                                        非静态对象 拥有属性:                是类共同拥有的                                             是类各对象独立拥有的 内存分配:               内存空间上是固定的      …
一.final        根据程序上下文环境,它可以修饰非抽象类.非抽象类成员方法和变量.         final类不能被继承,没有子类,final类中的方法默认是final的.        final方法不能被子类的方法覆盖,但可以被继承.        final成员变量表示常量,只能被赋值一次,赋值后值不再改变.        final不能用于修饰构造方法.        注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型…
Java的interface中,成员变量的默认修饰符为:public static final 所以我们在interface中定义成员变量的时候,可以 1:public static final String name = "张三"; 2:String name = "张三"; 以上两种都可以,老司机一般都是第二种.既然是静态最终的变量,也就意味着在外面访问的时候不能修改这个成员变量的值.所以在接口中定义成员变量的,一般都是常量.不会修改的.如果要进行修改的话,定义…
final final可以用在类.方法.变量上. 1.final用在类上,表明当前类它不能被继承,没有子类. 2.final用在方法上,表明当前方法不能被override,不能被重写. 3.final用在变量上,表明当前变量是一个终态的变量,是一个常量,这个变量的值一但被赋值后就不能被改变了. 对于final类型的成员变量的初始化方式: 1.声明变量时直接赋值 2.在构造方法中完成赋值,如果一个类有多个构造方法,就要保证在每个构造方法中都要完成对该final类型变量的初始化工作.//大概是因为构…
基础概念 是个修饰符: 修饰变量.常量.方法.代码块: 被修饰的为静态: 方便在没有创建对象的情况下来进行调用(方法/变量): static修饰的成员被所有的对象所共享: static优先于对象存在,因为static的成员随着类的加载就已经存在了: static修饰的数据是共享数据,对象中的存储的是特有数据: 分别举例说明 import lombok.extern.slf4j.Slf4j; import org.testng.annotations.Test; import java.util.…