java细节笔记(9月16)

1、泛型仅仅是java的语法糖,它不会影响java虚拟机生成的汇编代码,在编译阶段,虚拟机就会把泛型的类型擦除,还原成没有泛型的代码,顶多编译速度稍微慢一些,执行速度是完全没有什么区别的.

2、实现GBK编码字节流到UTF-8编码字节流的转换:

操作步骤就是先解码再编码

用new String(src,"GBK")解码得到字符串

用getBytes("UTF-8")得到UTF8编码字节数组

3、正确计算42度(角度)的余弦值

double d=Math.cos(Math.toRadians(42))
因为Math.cos中的参数的单位是弧度
而你的42是角度,所以要先把42化成弧度,Math.toRadians就是把角度化成弧度

4、重载只要求参数列表不同,返回值无关。

5、使用的是类的全名称。所以不需要使用import

6、forward,服务器获取跳转页面内容传给用户,用户地址栏不变

redirect,是服务器向用户发送转向的地址,redirect后地址栏变成新的地址

7、Object的getClass作用是返回的是运行时的

包名+类名

8、加载驱动方法

1.Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

2. DriverManager.registerDriver(new com.mysql.jdbc.Driver());

3.System.setProperty("jdbc.drivers", "com.mysql.jdbc.Driver");

9、yte类型值大小为-128~127之间

10、

run()方法用来执行线程体中具体的内容

start()方法用来启动线程对象,使其进入就绪状态

sleep()方法用来使线程进入睡眠状态

suspend()方法用来使线程挂起,要通过resume()方法使其重新启动

11、

jvm堆分为:新生代(一般是一个Eden区,两个Survivor区),老年代(old区)。

常量池属于 PermGen(方法区)

12、

1、每调用一次构造方法,则执行一次构造块

2、静态块只在类加载的时候加载一次

3、有多个静态变量或块时,按声明顺序加载

13、首先:

成员方法又称为实例方法

静态方法又称为类方法

其次:

a,静态方法中没有this指针

c,可以通过类名作用域的方式调用Class::fun();

d,太绝对化了,在类中申请一个类对象或者参数传递一个对象或者指针都可以调用;

14、

常见的哈希冲突解决方法:

1.开放地址法

2.链地址法(拉链法)

3.再散列

4.建立一个公共溢出区

15、

sleep和wait的区别有:
  1,这两个方法来自不同的类分别是Thread和Object
  2,最主要是sleep方法没有释放锁,而wait方法释放了锁,使得敏感词线程可以使用同步控制块或者方法。
  3,wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在
    任何地方使用
   synchronized(x){
      x.notify()
     //或者wait()
   }
   4,sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

16、枚举类有三个实例,故调用三次构造方法

时间: 2024-08-09 14:23:47

java细节笔记(9月16)的相关文章

java学习笔记—JDBC1(16)

1.数据持久化 l  持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用,也称为“固化”.在大多数情况下,服务器或客户端应用中数据的持久化是通过关系型数据库来实现 l  存储设备:磁盘.硬盘, U盘,光盘等 l  存储形式:数据库.xml文件.txt文件等 2.知识点2: Java 中的数据存储技术 l  在Java中,数据库存取技术可分为如下几类: l  JDBC直接访问数据库 l  第三方O/R工具,如Hibernate, ibatis 等 l  JDBC是java

《深入Java虚拟机学习笔记》- 第16章 控制流

<深入Java虚拟机学习笔记>- 第16章 控制流

【Java学习笔记之二十六】深入理解Java匿名内部类

在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始化匿名内部类.匿名内部类使用的形参为何要为final. 一.使用匿名内部类内部类 匿名内部类由于没有名字,所以它的创建方式有点儿奇怪.创建格式如下: new 父类构造器(参数列表)|实现接口() { //匿名内部类的类体部分 } 在这里我们看到使用匿名内部类我们必须要继承一个父类或者

Java学习笔记之继承

一.继承的基础 在Java术语中,被继承的类叫超类(superclass),继承超类的类叫子类(subclass). 举例说明: 1 class Box 2 { 3 public double width; 4 public double height; 5 public double depth; 6 7 //重载构造方法 8 public Box(Box ob) 9 { 10 width = ob.width; 11 height = ob.height; 12 depth = ob.dep

java学习笔记07--日期操作类

java学习笔记07--日期操作类 一.Date类 在java.util包中定义了Date类,Date类本身使用非常简单,直接输出其实例化对象即可. [java] view plaincopy public class T { public static void main(String[] args) { Date date  = new Date(); System.out.println("当前日期:"+date); //当前日期:Thu May 16 23:00:57 CST 

Java 学习笔记(2015.7.20~24)

Java 学习笔记(2015.7.20~24) Java Java 学习笔记(2015.7.20~24) 1.StringBuffer与StringBuilder的区别: 2.基本数据类型包装类 3.Date.Calendar.DateFormat等与时间相关的类 1.常用类String 2.正则表达式 3.常用类 StringBuffer 代表可变的字符序列 拆箱与装箱 包装类的应用 匿名内部类 数组 day11 day12 day13 day14 day11 父类中使用public定义的方法

【Java学习笔记之二十八】深入了解Java8新特性

前言: Java8 已经发布很久了,很多报道表明java8 是一次重大的版本升级.在Java Code Geeks上已经有很多介绍Java 8新特性的文章,例如Playing with Java 8 – Lambdas and Concurrency.Java 8 Date Time API Tutorial : LocalDateTime和Abstract Class Versus Interface in the JDK 8 Era.本文还参考了一些其他资料,例如:15 Must Read

Java系列笔记 - JVM监控与调优

光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在JVM出现问题时分析原因并解决之.通过学习,我觉得JVM监控与调优主要的着眼点在于如何配置.如何监控.如何优化3点上.下面就将针对这3点进行学习. (如果您对Java的内存区域划分和内存回收机制尚不明确,那在阅读本文前,请先阅读我的前一篇博客<Java系列笔记(3) - Java 内存区域和GC机制>,在该博客中,详细叙述了Java HotSpot虚拟机(Sun/Oracle JDK系列默认的虚拟机)的内存分配和垃圾回收机制.

Java系列笔记(1) - Java 类加载与初始化

目录 类加载器 动态加载 链接 初始化 示例 类加载器 在了解Java的机制之前,需要先了解类在JVM(Java虚拟机)中是如何加载的,这对后面理解java其它机制将有重要作用. 每个类编译后产生一个Class对象,存储在.class文件中,JVM使用类加载器(Class Loader)来加载类的字节码文件(.class),类加载器实质上是一条类加载器链,一般的,我们只会用到一个原生的类加载器,它只加载Java API等可信类,通常只是在本地磁盘中加载,这些类一般就够我们使用了.如果我们需要从远