Java知识合集


1、认识类声明的区别

  使用“public class 类名称”声明一个类时,类名称必须与文件名称一致,否则程序无法编译;

  使用“class 类名称”声明一个类时,类名称可以与文件名称不一致,但是在执行时一定要执行生成后的*.class,

  例如:TestClass.java文件声明类为Demo,执行为Demo.class;

  在一个java文件中可以有多个类的定义,但只要一个public class声明的类;

  Java命名规则,类的定义,类名称中每个单词的首字母必须大写。


2、java的注释

  单行注释,“//”;

  多行注释,“/*”与“*/";

  文档注释,”/**”开头“*/”结尾。

  eclipse中在函数前一行使用/**(这里回车) */自动生成函数说明

 

3、Java标识符规则

  Java中的包、类、方法、参数和变量的名称可由任意顺序的大小写字母、数字、下划线和美元

  符号($)组成,但标识符不能以数字开头,也不能是Java中的保留关键字。

  class、67.9、Hello LinXingHua是非法的标识符。


4、数组声明和对象实例化的内存分配

  int sarray[];  栈内存开辟空间保存数组名称sarry;

  sarray = new int[3];   堆内存开辟sarray数组内存空间。

  Person person1;  栈内存开辟空间保存对象名称person1;

  person1 = new Person();   堆内存开辟person1对象内存空间。


5、Java常用内存区域

  (1)栈内存空间:保存所有的对象名称(保存了引用的堆内存空间的地址)。

  (2)堆内存空间:保存每个对象的具体属性内容。

  (3)全局数据区:保存static类型的属性。

  (4)全局代码区:保存所有的方法定义。


6、java中static关键字

  static属性是所有对象共享的。

  非static声明的方法可以调用static声明的属性和方法;但static声明的方法是不能调用非static声明的属性和方法。

  因为非static声明的属性和方法必须在对象开辟堆内存空间之后才可以调用,而static声明的方法在对象未实例化时

  就可以被类名调用。

  单例模式:类永远只会有一个实例化对象存在。即将构造方法私有化(private),通过类的static方法getInstance()获得类内部自实例化对象。


7、代码块

  代码块:用{}括起来的一段代码,根据位置分类:普通代码块、构造块、静态代码块、同步代码块。

  普通代码块:指直接在方法或语句中定义的代码块;

  构造块:直接写在类中的代码块;构造块优先于构造方法执行,每次实例化对象时都执行。

  静态代码块:使用static声明的代码块;类定义的静态代码块优先于构造块执行,跟对象无关只执行一次


8、内部类

  1、类中定义内部类

  内部类好处:可以方便访问外部类的私有属性。

  外部访问内部类:

    (1)非static内部类:外部类.内部类 内部类对象 = 外部类实例.new 内部类();

    (2)static内部类:外部类.内部类 内部类对象 = new 外部类.内部类();

  2、方法中定义内部类

  方法中定义的内部类不能直接访问方法中的参数,参数前必须加上final关键字才能被内部类访问。


9、final关键字

  (1)final声明的类不能有子类;

  (2)final声明的方法不能被子类所覆写;

  (3)final声明的变量即成为常量,常量不可以修改。

  final变量命名规则:final声明的变量字母全部大写。


10、抽象类和接口

  1、抽象类

  (1)包含抽象方法的类必须为抽象类;

  (2)抽象类和抽象方法由abstract关键字声明;

  (3)抽象方法只需声明而不需实现;

  (4)抽象类必须被子类继承,子类(如果不是抽象类)必须覆写全部抽象方法。

  2、接口:特殊的抽象类,由全局常量和公共(public)的抽象方法所组成。

    接口可继承多接口 interface A extends B,C;


11、装箱和拆箱

  装箱:将一个基本数据类型变为包装类的过程;

  拆箱:将一个包装类变

 

12、静态导入

  import static 包.类.*;

  一个类中的方法全部使用static声明的静态方法可以静态导入。

  可以直接调用这些方法,无须:类.静态方法(); 方式调用,直接调用: 静态方法();


13、多线程Runnable

  一个多线程程序通过Runnable接口实现,意味着类中的属性将被多个线程共享。

 

posted @ 2016-11-03 17:48  win24  阅读(157)  评论(0编辑  收藏  举报