Java每日问题汇总-01

1.Java源文件后缀名(未编译文件)为.Java,经过javac.exe编译为二进制文件.class在经过Java.exe编译为.exe可执行文件

2.%取余运算,优先级同* /,从左到右

3.final修饰的类不能被继承

 final修饰的方法不能被子类覆盖

 final修饰的变量不能改变赋值

 final修饰的引用类型不能被修改指向哪里,但是能改变里边的内容

4.&和&&的区别

  if(a++>2&b++>2)判断前者为false,继续判断;if(a++>2&&b++>2)前者为false不继续判断直接输出false

5.Collection

  List(有序)

    ArrayList(与LinkedList的区别在于更适合随机访问)capacity容量自动增长

    LinkedList(更适合插入和删除)双向链表

    Vector(同步更安全,但性能差一点)

      Stack(push压栈pop出栈peek获取栈顶元素empty判断为空search查询某元素位置)

  Set(无序)

  Map

  hashmap:允许非空;非同步

  hashtable:实现map接口的哈希表,key-value,put( , )放数据get( , )取数据;not null;同步

多个线程对一个类进行操作,利用同步;同步线程安全

6.try{}catch{}finally{}

  不管try中有没有异常,finally块都会执行;

  finally语句块在catch语句块return之前执行

  try语句块和catch语句块中如果有system.exit(0)立刻结束程序

  finally语句块中的return会覆盖try语句块的return返回值

7.类变量或者实例变量在使用前都非空的,但是局部变量必须赋值

8.primitive types 基本数据类型 

  Java中每个基本数据类型对应一个引用数据类型int-Integer float-Float

9.jar 把许多类组合成一个jar文件

 javac把源文件.Java编译成二进制文件.class

 javadoc从源文件中抽取类、方法、成员的注释形成一个和源代码配套的API帮助文档

10.依赖注入 IOC容器减少各组件之间的耦合度,使开发更简洁

11.try{}catch{},try语句块可以跟多个catch语句块,依次将try语句块抛出的异常对象和catch语句块声明的异常类型匹配,如果该异常对象与该异常类型或其子类一致,则会执行catch语句块

  后边的不会在执行

12.c++中虚类和Java中的抽象类一样

  一个子类可以继承多个抽象类,但是可以实现多个接口

  抽象类中不一定是抽象方法,还可以是方法体;但是接口中一定是抽象类

13.方法没有继承一说,只有重写和重载

原文地址:https://www.cnblogs.com/Darius-Bennett/p/7460662.html