首页 > 代码库 > Java基础

Java基础

  1. Java源文件的扩展名是.java,编译之后生成.class的文件.所有的类都有一个共同的继承祖先Object类
  2. 一个.java文件中只能有一个public类,一个public类只能定义在以它的类名命名的文件中
  3. Implement关键字用来实现接口,类可以实现多个接口,继承使用extends 关键字
  4. package(包)为了更好的组织java程序,包为java程序提供了一个命名空间,一个java类的完整路径由它的包和类名共同组成
  5. Java类或者没有public关键字表示该类在它所在的包中可见,这是java中的默认访问权限
  6. 包的调用,把编译后的class文件放在相应路径下,然后用import语句引用
  7. super关键字来指代基类对象,类内可以用super访问基类成员,如果子类有同名函数,则在类外调用时,调用的是子类成员
  8. final关键字的基本含义是: 这个数据/方法/类不能被改变了。
    final基本类型的数据: 定值 (constant value),只能赋值一次,不能再被修改。
    final方法: 该方法不能被覆盖。private的方法默认为final的方法。
    final类: 该类不能被继承。
  9. Java中类之间是单继承,但可以继承多个接口
  10. Java中abstract,static,string关键字与c#中作用相同,函数参数传递规则也一样
  11. Java中引用起到指针的作用,存在栈但不能修改指针的值,如像c语言那样指针++操作不允许,如Human man = new Human(),man是引用,指向堆中创建的Human对象
  12. 垃圾回收:没有任何引用指向该对象时清空对象内存被回收
  13. Java中的异常类都继承自Trowable类
  14. Class类是类的抽象,无论我们对引用进行怎样的类型转换,对象本身所对应的Class对象都是同一个,像C#中的元数据,反射的作用
  15. synchronized是方法的修饰符。在Java中,同一对象的synchronized方法只能同时被一个线程调用。其他线程必须等待该线程调用结束,(余下的线程之一)才能运行,synchronized还有种用法与C# lock一样
  16. 内部类规则:
    • 内部类可以直接访问外部类成员,包括私有成员,写法为:外部类名.this.外部成员名
    • 外部类访问内部类,必须建立内部类对象 ,建立内部类对象必须先建立外部类对象
    • 当内部类被静态修饰后,只能访问外部类中的静态成员
  17. Java泛型中的? 表示类型不确定 ,List<?>list
  18. 运行时异常就是系统运行时报出的异常,是由系统内部调节机制报出的,如系统内存溢出等。非运行时异常则是由于程序编写不当造成的异常,最常见的空指针异常,数组下标超出异常等

  19. throws抛出的异常如果异常是继承RuntimeException,则不需要强制你写try catch语句来保证抛出的异常得到处理。如果继承的是Exception,则一定需要try catch语句保证异常得到处理,常见的运行时异常有:
    • ClassCastException(类转换异常)
    • IndexOutOfBoundsException(数组越界)
    • NullPointerException(空指针)
    • ArrayStoreException(数据存储异常,操作数组时类型不一致)

  20. import static静态导入是JDK1.5中的新特性。一般我们导入一个类都用 import com.....ClassName;而静态导入是这样:import static com.....ClassName.*;这里的多了个static,还有就是类名ClassName后面多了个 .* ,意思是导入这个类里的静态方法。当然,也可以只导入某个静态方法,只要把 .* 换成静态方法名就行了。然后在这个类中,就可以直接用方法名调用静态方法,而不必用ClassName.方法名 的方式来调用。

Java基础