java的一些基础

一.java的两大运行机制
虚拟机制JVM:java语言里负责、解释执行字节码文件,只要为不同平台上提供不同的虚拟机,编译后的字节码就可以在不同平台上运行。
垃圾回收机制GC:java提供了一的个自动的垃圾回收机制,不用程序员手动的进行处理,体现了java的健壮性。
二.String和StringBuffer的异同
相同点:
它们都可以存储和操作字符串。
不同点:
1.string 类表示内容不可改变的字符串,而StringBuffer类表示内容可以被改变的字符串。
2.String类腹泻了equals方法和hashCode 方法而StringBuffer没有。
三.重载和重写的区别
重写:父类和子类中,表示子类中的方法可以和父类中的某个方法的名称和参数完全相同。
重载:在同一个类中,方法名相同,参数个数不同或参数类型不同。
四.编译时异常和运行时异常的区别
1.编译时异常指程序在编写时就会出现的异常。必须使用try------catch进行处理。
2.RuntimeException指程序在运行时可能发生的异常。可以不使用try---catch进行,但如果有异常产生,则异常将由jvm进行处理。但位了保证程序的健康性,建立在有可能产生异常的地方还是使用try------catch进行处理。
五.接口和抽象类的区别
抽象类:可以有普通方法,可以定义静态普通方法,可以定义普通属性,可以包含构造器,只是用于非抽象子类创建对象,----单继承
接口:只能有抽象方法,不可以定义静态方法,只能定义常量属性,接口不包含构造器-----多继承。

String  s1 = abc;

   String  s2 =  new String(abc);

   String  s3 =  abc;

   System.out.println(s1==s2);                     

            System.out.println(s1.equals(s2));     

   System.out.println(s1==s3);  

注意:

     1.  s1放在栈中,而s2放在堆中。

     2.  String类复写了Object中的equals方法。

          该方法用于判断字符串是否相同。

     3. 若内存中已经有相同数据,则不会再另外开辟空间。

 六.list和Set的区别

List集合中的数据,有序且可以重复。

Set 集合中的数据,无序且不可以重复。

七.final,fianally和fianalize的区别
final用于声明属性,方法和类,分别表示属性不可改变,方法不可覆盖,类不可继承。
finally是抛出异常处理时提供finally块来执行任何清除操作。如果抛出异常,那么想匹配的catch子句就会执行,然后控制就会进入finally块。(如果有的话)。
finalize是Object类的一个方法,在垃圾收集器执行的会调用被收回对象的此方法,在回收栈上分配内存。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值