美文网首页
Java基础知识梳理

Java基础知识梳理

作者: 清雨季 | 来源:发表于2019-04-20 10:29 被阅读0次

访问权限有哪些


public: 公开的,所有的都可以访问
protected: 包访问权限,同包可以访问,子类可访问
default: 默认,什么都没有写的时候的权限,同包不可访问,子类可访问
private: 私有,只有自身可以访问

assert是什么,什么时候使用


assert 断言,通常用于调试,assert判断两个参数是否相同,一般会用来校验结果。

java内部类有哪些,有什么区别


  • 成员内部类
public class Outer{
    public class Inner {
    }
}

不允许存在静态字段和静态方法,但是可以存在常量(即不允许单独使用static修饰字段,必需同时加上final)
可以访问外部类字段,外部类可以访问内部类字段
外部要使用创建内部类对象需要使用外部内对象来创建:

new Outer().new Inner();
  • 静态内部类
public class Outer{
    public static class Inner {
    }
}

不可访问外部类非静态方法
构造方法调用:外部类名.内部类名 实例名 = new 外部类名.内部类名(参数)。
外部类可以访问内部类的字段,但是需要使用实例引用。

  • 局部内部类
    定义在某个区域内的内部类
    只能在此区域内使用

可以使用区域内的局部变量,但是局部变量要加final,原因可以参考https://www.cnblogs.com/xh0102/p/5729381.html

  • 匿名内部类
    可以定义常量和普通字段,不能定义静态字段
    可以定义代码块,不可以定义静态代码块
    不能定义构造方法
    不能定义静态方法
    可以访问外部类的字段
    外部类无法通过内部类的对象访问到内部类的字段和方法

Java中的位运算符有哪些


& : 同为1则1
| : 有一个为1则为1
~:1变0,0变1
^:相同则为0,不同则为1
>>: 右移,a >> b 相当于 a / 2^b
<<: 左移,a << b 相当于 a * 2^b
>>>: 无符号右移,与右移的区别是:>>>高位补0,而>>高位补符号位

java中a = a+b 和 a+=b有什么区别


+=可以自动向下转精度,但是a+b不能自动转精度,需要手动强转

override和overload的区别,overloaded方法可以改变返回值类型吗


override:子类覆盖父类的方法
overload:方法重载,可以改变返回值类型

java方法签名包括哪些内容


java语言层面方法签名:方法名,方法参数,参数顺序及类型
jvm面层方法签名:返回值类型,方法参数,参数顺序及类型

abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized


都不行

构造器Constructor是否可被override


不可以,但是可以被overload

如果try语句中return了,finally中的语句还会执行吗?

会,并且在return语句之前执行

两个对象值相同(x.equals(y) == true),是否可以有不同的hashCode

可以,java推荐equals方法返回true的两个对象hashCode要相同,但是毕竟是推荐,没有硬性要求

swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上

不能在long,float,double上,可以在String上,但是这是个语法糖

HashMap和Hashtable的区别

HashMap: 线程不安全,效率较好,支持key和value为null
Hashtable:线程安全,效率较差,不支持key或value为null

有哪些解决hash冲突的算法


再散列法:

相关文章

  • Android 知识梳理目录 - 好吧,这是一个很"干

    一、Java 知识梳理 Java&Android 基础知识梳理(1) - 注解Java&Android 基础知识梳...

  • SparseArray

    参考 Java&Android 基础知识梳理(10) - SparseArray 源码解析 这个类比较简单,解析...

  • 关于2017年本猿的生存计划

    一、.工作: 安卓基础知识通过阅读和交流梳理了一遍,其中阅读书籍 Java:《THINK IN JAVA 》《He...

  • Java基础知识梳理

    Java 基础知识梳理 1、Java的基本程序设计结构 1.1:数据类型 java中存在8中基本数据类型,其中有四...

  • java基础知识梳理

    java基础知识梳理 一. 背景知识 1. 根据开发环境分类 2. java基本特性 3. JDK的介绍 4. J...

  • Java基础知识梳理

    访问权限有哪些 public: 公开的,所有的都可以访问protected: 包访问权限,同包可以访问,子类可访问...

  • android 最全 图片相关知识整理

    android 最全 图片相关知识整理 图片基础知识梳理图片基础知识梳理(1) - ImageView 的 Sca...

  • Java 拾遗(之二)

    Java 拾遗(之二) 背景 上一篇《拾遗》只是对Java语言基础知识的一个笼统的梳理,有些之前接触不太多的,或者...

  • java基础知识

    title: java基础知识tags: [java基础知识] 位运算符 java种的运算符有 “&”,“|”,“...

  • Java 基础知识点梳理

    一、规范 1.标识符:组成只能是数字、字母、下划线和美元符组成,并且数字不能开头2.包名:一般字母全部小写 ,规则...

网友评论

      本文标题:Java基础知识梳理

      本文链接:https://www.haomeiwen.com/subject/aajxgqtx.html