Java知识点及面试题

整数拓展

  • 进制

    1. 二进制0b
    2. 八进制0
    3. 十进制
    4. 十六进制0x
public class Demo03 {
public static void main(String[] args) {
int num1 = 0b10;//int在内存里是以二进制存储的
int num2 = 010;
int num3 = 10;//为了方便观看,int输出的时候使用十进制进行输出
int num4 = 0x10; System.out.println(num1);
System.out.println(num2);
System.out.println(num3);
System.out.println(num4);
}
}

浮点数拓展

public class Demo03 {
public static void main(String[] args){
float num5 = 3.141592f;//float精确到第七位数
double num6 = 3.141592;//double精确到第十六位数 System.out.println(num5);
System.out.println(num6);
System.out.println(num5==num6);//ture
//精度不同,因为31.41592不等于31.41592000000000 float num7 = 3.1415926f;
float num8 = num7 + 0.0000001f;//在float数据类型中,值加整数不用在整数后加F或f,值加浮点数要在浮点数后加F或f System.out.println(num7);
System.out.println(num8);
System.out.println(num7==num8);//false
}
}

字符拓展

  1. 所有字符的本质还是数字

    • Unicode编码表中的每个编码占2个字节,且Unicode的编码可以处理各种语言的文字,不止有25536个字符
    • 在Unicode编码表中字符都是用数字表示的,例如:97=a,65=A
    • 以前的Excel表格最长只可以表示2的16次方=25536个字符
    • \u是转义字符,表示后面跟一个十六进制数,再通过这个十六进制数来指定一个字符

    • \u不能出现在注释中,\u在注释中也会转义,不然运行时会显示非法的 Unicode 转义

    • 注意

      //\u000d System.out.println("Hello World!"); 会输出hello world!
      \u000d,\\\u000d, \\\\\u000d...奇数个\都会转义
      \\u000d, \\\\u000d...偶数个\不会转义
  2. 常用的转义字符

    \n:回车换行符。显示该字符时,光标移到下一行的行首
    \r:回车符。显示该字符时,光标移到当前行的行首
    \t:水平制表符。显示该字符时,光标向右移动一个制表位
    \v:垂直制表符。显示该字符时,光标向下移动到下一行的同一列制表位
    \b:退格
    \f:换页
    \a:鸣铃
    \\:反斜杠字符
    \':单引号符
    \":双引号符
    \d \dd \ddd:1~3位八进制数所代表的字符,d的值可以是0~7的任何数字
    \xh \xhh:1~2位十六进制数所代表的字符,h的值可以是0~f的任何字符
    public class Demo03 {
    public static void main(String[] args) {
    System.out.println("Hello\nWorld");
    }
    }

对象 从内存分析

  1. new关键字会在内存申请一块空间,空间中就有地址,new了几次,就有几块空间,就有几个地址
  2. ==:如果比较的对象是引用数据类型,则比较的是地址是否一致,如果比较的对象是基本数据类型,则比较的是值是否一致
public class Demo03 {
public static void main(String[] args) {
String d1 = new String("Hello,world!");//new关键字会在内存申请一块空间,空间中就有地址
String d2 = new String("Hello,world!");//new了几次,就有几块空间,就有几个地址
System.out.println(d1==d2);//这里比较的是地址是否相等 String d3 = "Hello,world!";
String d4 = "Hello,world!";
System.out.println(d3==d4);//这里比较的是值是否相等,d3和d4都是在字符串常量池取出来的,值以及存储地址都一样
}
}

布尔值拓展

public class Demo03 {
public static void main(String[] args) {
boolean fleg=true;
if (fleg==true){}//新手
if (fleg){}//老手 //Less is More! 代码要精简易读!
}
}

【Java学习Day09】Java知识点及面试题微讲的更多相关文章

  1. [java学习笔记]java语言核心----面向对象之this关键字

    一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理:         代表的是当前对象.         this就是所在函数 ...

  2. [java学习笔记]java语言核心----面向对象之构造函数

    1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用:                给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...

  3. [ Java学习基础 ] Java构造函数

    构造方法是类中特殊方法,用来初始化类的实例变量,它在创建对象(new运算符)之后自动调用. Java构造方法的特点如下: 构造方法名必须与类名相同. 构造方法没有任何返回值,包括void. 构造方法只 ...

  4. [ Java学习基础 ] Java的继承与多态

    看到自己写的东西(4.22的随笔[ Java学习基础 ] Java构造函数)第一次达到阅读100+的成就还是挺欣慰的,感谢大家的支持!希望以后能继续和大家共同学习,共同努力,一起进步!共勉! ---- ...

  5. [ Java学习基础 ] Java的抽象类与接口

    一.抽象类 1. 抽象类 Java语言提供了两种类:一种是具体类:另一种是抽象子类. 2. 抽象类概念: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的 ...

  6. Java学习---面试基础知识点总结

    Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类. sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线 ...

  7. Java学习之Java接口回调理解

    Java接口回调 在Java学习中有个比较重要的知识点,就是今天我们要讲的接口回调.接口回调的理解如果解释起来会比较抽象,我一般喜欢用一个或几个经典的例子来帮助加深理解. 举例:老板分派给员工做事,员 ...

  8. java学习笔记----java入门

    java基础 一.java语言跨平台原理 1.什么是跨平台? 跨平台就是一个软件可以在不同的操作系统中运行,但是不需要对其修改.换句话说,java语言编写的软件在不做修改的情况下就能在不同的系统平台上 ...

  9. java学习路线图-----java基础学习路线图(J2SE学习路线图)

    安装JDK和开发软件跳过,网上太多了,不做总结,以下是我总结的学习路线图,欢迎补充. JAVA基础语法 注释,标识符命名规则及Java中的关键字 Java基本数据类型 Java运算符与表达式 Java ...

  10. Java学习笔记 -- Java定时调度工具Timer类

    1 关于 (时间宝贵的小姐姐请跳过) 本教程是基于Java定时任务调度工具详解之Timer篇的学习笔记. 什么是定时任务调度 基于给定的时间点,给定的时间间隔或者给定的执行次数自动执行的任务. 在Ja ...

随机推荐

  1. 鼎阳SDS6204示波器的EPICS IOC调试

    经过雷雷师弟的努力,该款示波器终于调试成功,相关文件现放在gitee仓库里: https://gitee.com/lup9304/siglent/commit/99ce00d195facd87fa1c ...

  2. [AI-ML]机器学习是什么?一起了解!(一)

    机器学习 简单的说,机器学习是一种让计算机系统从数据中学习并自动改进的算法.通俗地说,机器学习就是让计算机从数据中"学习",并使用这些学习成果来做出决策或预测. 学术解释中,机器学 ...

  3. 从零开始使用阿里云OSS服务(白嫖)

    阿里云对象存储服务OSS使用记录 1 新人免费开通OSS服务 访问 阿里云官网,登录账号(个人新用户账号),首页搜索 对象存储OSS,点击下方的直达. 点击立即开通,此时会在一个新网页中完成开通 完成 ...

  4. TNF拮抗剂的结构、功能与结核感染_Wallis2008

    中信国健临床通讯 2009年第2期 TNF拮抗剂的结构.功能与结核感染 Robert S. Wallis. THE LANCET Infectious Diseases. 2008; 8:601–61 ...

  5. PostgreSQL 并行计算算法,参数,强制并行度设置

    一.优化器并行计算的并行度计算方法 1.总worker进程数 postgres=# show ; max_worker_processes ---------------------- 128 (1 ...

  6. z order curve

    https://www.cnblogs.com/tgzhu/p/8286616.html

  7. CSS3,线性渐变(适用标题背景)

    .test{ margin:200px auto; height:30px; border:1px #D4D4D4 solid; box-shadow:0 -1px 10px rgba(0,0,0,0 ...

  8. 桌面应用(.exe)设置窗口默认最大化、全屏(electron)

    设置窗口默认最大化.全屏(electron) 一.默认最大化 win = new BrowserWindow({show: false}) win.maximize() win.show() 二.默认 ...

  9. java8 Stream API之reduce

    通过前面那篇文章,我们已经对Stream API有了初步的认识,并对它在集合处理中的增强作用表示了肯定.同时我们上篇中示例了forEach.fiter.sum这些常用的功能,本篇我们只讲reduce. ...

  10. C++实现顺序队列(循环队列)相关操作代码

    #include<iostream>#include<cstdlib>using namespace std;#define MAXSIZE 100#define OK 1#d ...