this,构造器,static,final,单例模式】的更多相关文章

Unlike methods, a constructor cannot be abstract, static, final, native  or synchronized. 1. A constructor is not inherited, so there is no need to declare it final 2. As the same reason above, an abstract constructor could never be implemented. 3. A…
http://tanbing1986411.blog.163.com/blog/static/7259798220103610224434/ java static final 初始化 1.static修饰(类变量)一个属性字段,那么这个属性字段将成为类本身的资源,public修饰为共有的,可以在类的外部通过test.a来访问此属性;在类内部任何地方可以使用.如果被修饰为private私有,那么只能在类内部使用. public class Test{ public static int a;//…
String两种实例化方式 一种是通过双引号直接赋值的方式,另外一种是使用标准的new调用构造方法完成实例化.如下: String str = "abcd"; String str = new String("1234); 第一种方法: 使用直接赋值后,只要是以后声明的字符串内容相同,则不会再开辟新的内存空间.对于String的以上操作,在java中称为共享设计.这种设计思路是,在java中形成一个字符串对象池,在这个字符串对象中保存多个字符串对象,新实例化的对象如果已经在池…
众所周知,static 是静态修饰关键字:可以修饰变量,程序块,方法,类. 1.修饰变量. 得知:如果static修饰的是变量,则JVM会将将其分配在内存堆上,该变量就与对象无关,所有对该变量的引用都指向同一个地址. 因此我们使用该变量的时候,直接指明类的静态变量,当然修饰符必须 public 1 public class StaticBean { 2 public static String A = "A"; 3 } 使用方式 1 public static void main(St…
最近重头开始看基础的书,对一些基础的概念又有了一些新的理解,特此记录一下 static final修饰的常量: 静态常量(static修饰的全部为静态的),编译器常量,编译时就确定其值(java代码经过编译器把.java源文件编译成.class字节码文件.经过jvm解释成机器码) 存放于方法区的静态常量池中,在编译时就已经存放 如果调用此常量的类并不是定义这个常量的类,那么不会初始化定义这个常量的类,节省了内存资源的开销 class Demo{ } 代码如下 class Demo{ privat…
笔记: import java.lang.*; /**一:枚举类 : enum Season implements info { s1(),s2(),s3(),s4() }; //s1--s4 放在Season类的最上面! * 1.1.values() 返回一个包含整体的数组! * 2.valueof(String name),返回对应name的类, 必须是枚举类对象的名字,否则报错! * 3.实现接口,重写抽象方法 ,不同的枚举类可以有不同的方法 */ 枚举类代码: interface inf…
不同于方法,构造器不能是abstract, static, final的. 1.构造器不是通过继承得到的,所以没有必要把它声明为final的. 2.同理,一个抽象的构造器将永远不会被实现,所以它也不能声明为abstract的. 3.构造器总是关联一个对象而被调用,所以把它声明为static是没有意义的.…
<init>和<clinit> init是对象构造器方法,初始化对象的时候执行 clinit是类构造器方法,类加载的初始化阶段执行 final常量赋值(必须是一下其中一种) 显式赋值 构造参数中赋值<init> 代码块中赋值 static类变量初始化 <clinit>同步方法(static赋语句.static代码块由jvm clinit收集并执行) 接口与类一样都会生成<clinit> 接口与类不同的是,执行接口的<clinit>()…
this 理解为当前对象. //测试 public static void main(String[] args){ Person person = new Person(3, "xiaoMing"); } //创建一个类: class Person{ int age; String name; public Person(int age,String name){ this.age = age; //this:当前对象,在这里是指person这个对象. this.name = nam…
Static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,被static修饰的成员变量和成员方法独立于该类的任何对象.也就是说,它不依赖类特定的实例,被类的所有实例共享.只要该类加载,JVM虚拟机就能根据类名在运行时数据区的方法区内找到他们.因此,static对象可以在它的任何对象创建之前访问,无需引用任何对象.1.static修饰类的成员方法或者成员变量,我们通常称该方法是静态方法,该方法是静态变量:若用public修饰static成员方法或者成…